דרישות מוקדמות
- מתקינים את הגרסה האחרונה של Android SDK באמצעות Android SDK Manager.
- מתקינים את הגרסה האחרונה של AndroidX Libraries של appcompat ו-mediarouter דרך Android SDK Manager.
- מתקינים את Cast SDK בגרסה האחרונה ב-Google Play Services דרך Android SDK Manager.
Google Cast SDK ל-Android הוא חלק מ-Google Play Services SDK ואין צורך להוריד אותו בנפרד.
הערה: Google Play Services מעניק לכם גישה למגוון ממשקי API ליצירת מודעות, לאיסוף נתונים אנליטיים, לאימות משתמשים, לשילוב מפות ועוד. מידע נוסף זמין במאמר סקירה כללית על Google Play Services. חשוב לוודא שה-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:22.0.0' }
חשוב לעדכן את מספר הגרסה הזה בכל פעם ש-Google Play Services מתעדכן.
הערה: אם מספר ההפניות לשיטות באפליקציה חורג מהמגבלה של 65,000, יכול להיות שהאפליקציה לא תעבור הידור. כדי לצמצם את הבעיה הזו בזמן הידור האפליקציה, אפשר לציין רק את ממשקי ה-API הספציפיים של Google Play Services שבהם האפליקציה משתמשת, במקום את כולם. למידע נוסף, קראו את המאמר הדרכה לבחירת ממשקי API לצורך הידור בתוכנה ההפעלה.
- שומרים את השינויים ולוחצים על סנכרון הפרויקט עם קובצי Gradle בסרגל הכלים.
סביבת פיתוח משולבת (IDE) אחרת
כדי להפוך את ממשקי ה-API של Google Play Services לזמינים לאפליקציה:
- מעתיקים את פרויקט הספרייה שנמצא ב-
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/
למיקום שבו אתם מנהלים את פרויקטי האפליקציות ל-Android. - בפרויקט האפליקציה, מפנים לפרויקט הספרייה של Google Play Services. למידע נוסף על כך, ראו
הפניה לפרויקט ספרייה בשורת הפקודה.
הערה: צריך להפנות לעותק של הספרייה שהעתקתם למרחב העבודה של הפיתוח – אסור להפנות לספרייה ישירות מהספרייה של Android SDK.
- אחרי שמוסיפים את ספריית 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