Einrichtung für die Entwicklung mit dem Cast Application Framework (CAF) für Android

Vorbereitung

Das Google Cast SDK für Android ist Teil des Google Play-Dienste SDK und muss nicht separat heruntergeladen werden.

Hinweis: Über die Google Play-Dienste hast du Zugriff auf verschiedene APIs, mit denen du Anzeigen erstellen, Analysen erfassen, Nutzer authentifizieren, Karten einbinden und vieles mehr tun kannst. Weitere Informationen finden Sie unter Übersicht über Google Play-Dienste. Es ist wichtig, dass du dafür sorgst, dass das richtige APK für die Google Play-Dienste auf dem Gerät eines Nutzers installiert ist, da Updates möglicherweise nicht sofort alle Nutzer erreichen.

Google Play-Dienste zu Ihrem Projekt hinzufügen

Wählen Sie unten Ihre Entwicklungsumgebung aus und fügen Sie Ihrem Projekt die Google Play-Dienste hinzu. Folgen Sie dazu der Anleitung.

Android Studio

So machen Sie die Google Play-Dienste-APIs für Ihre App verfügbar:

  1. Öffnen Sie die Datei build.gradle im Verzeichnis Ihres Anwendungsmoduls.

    Hinweis: Android Studio-Projekte enthalten eine build.gradle-Datei auf oberster Ebene und eine build.gradle-Datei für jedes Modul. Achten Sie darauf, die Datei für Ihr Anwendungsmodul zu bearbeiten. Weitere Informationen zu Gradle finden Sie unter Projekt mit Gradle erstellen.

  2. Prüfen Sie, ob google() in der aufgeführten repositories enthalten ist.
    repositories {
        google()
    }
  3. Fügen Sie unter dependencies eine neue Build-Regel für die aktuelle Version von play-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:23.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 die App möglicherweise nicht kompiliert werden. Sie können dieses Problem beim Kompilieren Ihrer App möglicherweise beheben, indem Sie nur die spezifischen Google Play-Dienste-APIs angeben, die Ihre App verwendet, anstatt alle. Informationen dazu finden Sie unter APIs selektiv in die ausführbare Datei kompilieren.

  4. Speichern Sie die Änderungen und klicken Sie in der Symbolleiste auf Projekt mit Gradle-Dateien synchronisieren.

Andere IDE

So machen Sie die Google Play-Dienste-APIs für Ihre App verfügbar:

  1. 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.
  2. Verweisen Sie in Ihrem App-Projekt auf das Bibliotheksprojekt der Google Play-Dienste. Weitere Informationen finden Sie unter Referenzieren eines Bibliotheksprojekts in der Befehlszeile.

    Hinweis: Sie sollten auf eine Kopie der Bibliothek verweisen, die Sie in Ihren Entwicklungsarbeitsbereich kopiert haben. Verweisen Sie nicht direkt aus dem Android SDK-Verzeichnis auf die Bibliothek.

  3. Nachdem Sie die Google Play-Dienste-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 du dein Projekt so eingerichtet hast, dass es auf das Bibliotheksprojekt verweist, kannst du mit der Entwicklung von Funktionen mit den Google Play Services APIs beginnen.

Proguard-Ausnahme erstellen

Fügen Sie der Datei /proguard-project.txt die folgenden Zeilen hinzu, um zu verhindern, dass ProGuard erforderliche Klassen entfernt:

-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