דרישות מוקדמות
- מתקינים את הגרסה האחרונה של Android SDK באמצעות Android SDK Manager.
- התקן את הגרסה האחרונה של ספריות AndroidX ל-appcompat ול-mediarouter דרך מנהל ה-SDK של Android.
- התקן את הגרסה העדכנית ביותר של Cast SDK בשירותי Google Play באמצעות Android SDK Manager.
Google Cast SDK ל-Android הוא חלק מ-Google Play Services SDK ואין צורך להוריד אותו בנפרד.
הערה: Google Play Services נותנת לכם גישה למגוון ממשקי API כדי ליצור מודעות, לאסוף ניתוח נתונים, לאמת משתמשים, לשלב מפות ועוד. למידע נוסף, קראו את המאמר סקירה כללית על שירותי Google Play. חשוב לוודא ש-APK הנכון של Google Play Services מותקן במכשיר של המשתמש, כי ייתכן שהעדכונים לא יגיעו מיד לכל המשתמשים.
הוספת Google Play Services לפרויקט
בוחרים את סביבת הפיתוח בהמשך ומוסיפים את Google Play Services לפרויקט לפי השלבים הבאים.
Android Studio
כדי שממשקי ה-API של Google Play Services יהיו זמינים לאפליקציה:
- פותחים את הקובץ
build.gradle
שבתוך הספרייה של מודול האפליקציה.הערה: פרויקטים ב-Android Studio מכילים קובץ
build.gradle
ברמה העליונה וקובץbuild.gradle
לכל מודול. הקפידו לערוך את הקובץ של מודול האפליקציה. מידע נוסף על Gradle זמין במאמר בניית הפרויקט באמצעות Gradle. - יש לוודא ש-
google()
כלול ב-repositories
שברשימה.repositories {
- מוסיפים כלל build חדש בקטע
dependencies
לגרסה האחרונה שלplay-services
. לדוגמה:apply plugin: 'com.android.application' ... dependencies { implementation 'androidx.appcompat:appcompat:1.3.1' implementation 'androidx.mediarouter:mediarouter:1.2.5' implementation 'com.google.android.gms:play-services-cast-framework:21.4.0' }
חשוב להקפיד לעדכן את מספר הגרסה הזה בכל פעם ש-Google Play Services מתעדכן.
הערה: אם מספר ההפניות ל-method באפליקציה חורג ממגבלת 65,000, יכול להיות שהאפליקציה לא תוכל להדר. ייתכן שתהיה לך אפשרות לצמצם את הבעיה במהלך הידור האפליקציה באמצעות ציון רק ממשקי ה-API הספציפיים של Google Play Services שהאפליקציה משתמשת בהם, במקום כולם. למידע נוסף על כך, תוכלו לקרוא את המאמר הידור סלקטיבי של ממשקי API לקובץ ההפעלה.
- שומרים את השינויים ולוחצים על Sync Project with Gradle Files (סנכרון הפרויקט עם Gradle Files) בסרגל הכלים.
סביבת פיתוח משולבת (IDE) אחרת
כדי שממשקי ה-API של Google Play Services יהיו זמינים לאפליקציה:
- מעתיקים את פרויקט הספרייה שנמצא בכתובת
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/
למיקום שבו נשמרים הפרויקטים של האפליקציות ל-Android. - בפרויקט האפליקציה, מפנים אל פרויקט ספריית השירותים של Google Play. למידע נוסף על האופן שבו עושים זאת, ראו
הפניית פרויקט ספרייה בשורת הפקודה.
הערה: יש להפנות לעותק של הספרייה שהעתקתם לסביבת הפיתוח – אל תפנו לספרייה ישירות מספריית ה-SDK של Android.
- אחרי ההוספה של ספריית Google Play Services כתלות בפרויקט האפליקציה, פותחים את קובץ המניפסט של האפליקציה ומוסיפים את התג הבא כצאצא של הרכיב
<application>
:<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
אחרי שהגדרתם את הפרויקט שלכם לשימוש בפרויקט הספרייה, תוכלו להתחיל לפתח תכונות עם ממשקי ה-API של Google Play Services.
יצירת חריג של ProGuard
כדי למנוע מ-ProGuard להסיר את המחלקות הנדרשות, צריך להוסיף את השורות הבאות בקובץ
:
-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { public static final *** NULL; } -keepnames class * implements android.os.Parcelable -keepclassmembers class * implements android.os.Parcelable { public static final *** CREATOR; } -keep @interface android.support.annotation.Keep -keep @android.support.annotation.Keep class * -keepclasseswithmembers class * { @android.support.annotation.Keep <fields>; } -keepclasseswithmembers class * { @android.support.annotation.Keep <methods>; } -keep @interface com.google.android.gms.common.annotation.KeepName -keepnames @com.google.android.gms.common.annotation.KeepName class * -keepclassmembernames class * { @com.google.android.gms.common.annotation.KeepName *; } -keep @interface com.google.android.gms.common.util.DynamiteApi -keep public @com.google.android.gms.common.util.DynamiteApi class * { public <fields>; public <methods>; } -dontwarn android.security.NetworkSecurityPolicy