Vorbereitung
- Installieren Sie die neueste Version des Android SDK mit dem Android SDK Manager.
- Installieren Sie die neueste Version der AndroidX-Bibliotheken „appcompat“ und „mediarouter“ über den Android SDK Manager.
- Installiere das neueste Cast SDK in Google Play-Diensten über den Android SDK Manager.
Das Google Cast SDK for Android ist Teil des Google Play Services SDK und muss nicht separat heruntergeladen werden.
Hinweis: Google Play-Dienste bieten Zugriff auf eine Vielzahl von APIs, mit denen Sie unter anderem Anzeigen erstellen, Analysen erfassen, Nutzer authentifizieren und Karten einbinden können. Weitere Informationen finden Sie unter Google Play-Dienste. Es ist wichtig, dass die richtige APK der Google Play-Dienste auf dem Gerät eines Nutzers installiert ist, da Updates möglicherweise nicht alle Nutzer sofort erreichen.
Google Play-Dienste zu Ihrem Projekt hinzufügen
Wählen Sie unten Ihre Entwicklungsumgebung aus und fügen Sie Ihrem Projekt Google Play-Dienste hinzu. Folgen Sie dazu der Anleitung.
Android Studio
So stellen Sie die APIs der Google Play-Dienste für Ihre App zur Verfügung:
- Öffnen Sie die Datei
build.gradle
im Verzeichnis des Anwendungsmoduls.Hinweis:Android Studio-Projekte enthalten eine
build.gradle
-Datei auf oberster Ebene und einebuild.gradle
-Datei für jedes Modul. Bearbeiten Sie die Datei für Ihr Anwendungsmodul. Weitere Informationen zu Gradle finden Sie unter Ihr Projekt mit Gradle erstellen. - Prüfen Sie, ob
google()
in den aufgeführtenrepositories
enthalten ist.repositories {
- Fügen Sie unter
dependencies
eine neue Build-Regel für die neueste Version vonplay-services
hinzu. Beispiel: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' }
Aktualisieren Sie diese Versionsnummer jedes Mal, wenn die Google Play-Dienste aktualisiert werden.
Hinweis:Wenn die Anzahl der Methodenreferenzen in Ihrer App das Limit von 65.000 überschreitet, kann Ihre App möglicherweise nicht kompiliert werden. Sie können dieses Problem beim Kompilieren Ihrer App möglicherweise vermeiden, indem Sie nur die Google Play-Dienst-APIs angeben, die Ihre App verwendet, anstatt alle. Weitere Informationen finden Sie unter APIs selektiv in Ihre ausführbare Datei kompilieren.
- Speichern Sie die Änderungen und klicken Sie in der Symbolleiste auf Projekt mit Gradle-Dateien synchronisieren.
Andere IDE
So stellen Sie die APIs der Google Play-Dienste für Ihre App zur Verfügung:
- Kopieren Sie das Bibliotheksprojekt unter
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/
an den Speicherort, an dem Sie Ihre Android-App-Projekte verwalten. - Verweise in deinem App-Projekt auf das Google Play-Dienste-Bibliotheksprojekt. Weitere Informationen dazu finden Sie unter
Auf ein Bibliotheksprojekt in der Befehlszeile verweisen.
Hinweis:Sie sollten auf eine Kopie der Bibliothek verweisen, die Sie in Ihren Entwicklungsbereich kopiert haben. Sie sollten nicht direkt auf die Bibliothek im Android SDK-Verzeichnis verweisen.
- Nachdem Sie die Google Play Services-Bibliothek als Abhängigkeit für Ihr App-Projekt hinzugefügt haben, öffnen Sie die Manifestdatei Ihrer App und fügen Sie das folgende Tag als untergeordnetes Element des
<application>
-Elements hinzu:<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
Nachdem Sie Ihr Projekt so eingerichtet haben, dass es auf das Bibliotheksprojekt verweist, können Sie mit der Entwicklung von Funktionen mit den Google Play-Dienst-APIs beginnen.
Proguard-Ausnahme erstellen
Damit ProGuard keine erforderlichen Klassen entfernt, fügen Sie der Datei
die folgenden Zeilen hinzu:
-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