Ön koşullar
- Android SDK Yöneticisi'ni kullanarak Android SDK'nın en son sürümünü yükleyin.
- Android SDK Yöneticisi üzerinden appcompat ve mediarouter AndroidX Kitaplıkları'nın en son sürümünü yükleyin.
- Android SDK Yöneticisi üzerinden Google Play hizmetlerindeki en yeni Cast SDK'sını yükleyin.
Android için Google Cast SDK'sı, Google Play Hizmetleri SDK'sının bir parçasıdır ve ayrı olarak indirilmesi gerekmez.
Not: Google Play Hizmetleri reklam oluşturmak, analiz toplamak, kullanıcıların kimliklerini doğrulamak, haritaları entegre etmek ve daha pek çok işlem için bir dizi API'ye erişmenizi sağlar. Daha fazla bilgi için Google Play Hizmetleri'ne Genel Bakış konusuna göz atın. Güncellemeler tüm kullanıcılara hemen ulaşmayabileceğinden kullanıcının cihazına doğru Google Play Hizmetleri APK'sının yüklendiğinden emin olmanız önemlidir.
Projenize Google Play Hizmetleri'ni ekleme
Aşağıdan geliştirme ortamınızı seçin ve belirtilen adımları uygulayarak Google Play hizmetlerini projenize ekleyin.
Android Studio
Google Play Hizmetleri API'lerini uygulamanızda kullanılabilir hale getirmek için:
- Uygulama modülü dizininizin içindeki
build.gradle
dosyasını açın.Not: Android Studio projeleri, her modül için bir üst düzey
build.gradle
dosyası ve birbuild.gradle
dosyası içerir. Uygulama modülünüzün dosyasını düzenlediğinizden emin olun. Gradle hakkında daha fazla bilgi için Projenizi Gradle ile Oluşturma bölümüne bakın. google()
politikasının, listelenenrepositories
kapsamına girdiğini doğrulayın.repositories {
play-services
uygulamasının en son sürümü içindependencies
altına yeni bir derleme kuralı ekleyin. Örneğin: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 Hizmetleri her güncellendiğinde bu sürüm numarasını güncellediğinizden emin olun.
Not: Uygulamanızdaki yöntem referanslarının sayısı 65 bin sınırını aşarsa uygulamanız derleme yapamayabilir. Uygulamanızı derlerken, hepsi yerine yalnızca uygulamanızın kullandığı belirli Google Play Hizmetleri API'lerini belirterek bu sorunu azaltabilirsiniz. Bunun nasıl yapılacağı hakkında bilgi edinmek için API'leri yürütülebilir dosyanıza seçerek derleme bölümüne bakın.
- Değişiklikleri kaydedin ve araç çubuğunda Sync Project with Gradle Files'ı (Projeyi Gradle Dosyalarıyla Senkronize Et) tıklayın.
Diğer IDE
Google Play Hizmetleri API'lerini uygulamanızda kullanılabilir hale getirmek için:
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/
konumundaki kitaplık projesini, Android uygulaması projelerinizi yönettiğiniz konuma kopyalayın.- Uygulama projenizde Google Play Hizmetleri kitaplık projesine bakın. Bunun nasıl yapılacağı hakkında daha fazla bilgi için
Komut Satırında Kitaplık Projesine Başvurma bölümüne bakın.
Not: Kitaplığın, geliştirme çalışma alanınıza kopyaladığınız bir kopyasına başvuruyor olmanız gerekir. Kitaplığa doğrudan Android SDK dizininden referans vermemeniz gerekir.
- Google Play Hizmetleri kitaplığını uygulama projenize bağımlılık olarak ekledikten sonra uygulamanızın manifest dosyasını açın ve aşağıdaki etiketi
<application>
öğesinin alt öğesi olarak ekleyin:<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
Projenizi kitaplık projesine referans verecek şekilde ayarladıktan sonra, Google Play Hizmetleri API'leriyle özellik geliştirmeye başlayabilirsiniz.
ProGuard istisnası oluştur
ProGuard'ın gerekli sınıfları çıkarmasını önlemek için
dosyasına aşağıdaki satırları ekleyin:
-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