Configurazione per lo sviluppo con Cast Application Framework (CAF) per Android

Prerequisiti

L'SDK Google Cast per Android fa parte dell'SDK Google Play Services e non devono essere scaricati separatamente.

Nota: Google Play Services ti dà accesso a una serie di API per creare annunci, raccogliere dati di analisi, autenticare gli utenti integrare le mappe e molto altro ancora. Per ulteriori informazioni, consulta la Panoramica di Google Play. Servizi. È importante assicurarti che l'APK di Google Play Services corretto sia installato sul dispositivo di un utente poiché gli aggiornamenti potrebbero non raggiungere immediatamente tutti gli utenti.

Aggiungi Google Play Services al progetto

Seleziona il tuo ambiente di sviluppo qui sotto e aggiungi Google Play Services al progetto seguendo i passaggi indicati.

Android Studio

Per rendere disponibili le API di Google Play Services per la tua app:

  1. Apri il file build.gradle nella directory del modulo dell'applicazione.

    Nota. I progetti Android Studio contengono una build.gradle e un file build.gradle per ogni modulo. Assicurati di modificare il file per il modulo dell'applicazione. Consulta Building Your Project with Gradle per saperne di più su Gradle.

  2. Verifica che google() sia incluso nei repositories elencati.
    repositories {
        google()
    }
    
  3. Aggiungi una nuova regola di build in dependencies per la versione più recente di play-services. Ad esempio:
    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.5.0'
        }
    

    Assicurati di aggiornare questo numero di versione ogni volta che viene aggiornato Google Play Services.

    Nota:se il numero di riferimenti ai metodi nella tua app supera le Limite di 65.000, la tua app potrebbe non riuscire a di addestramento tramite il metodo compile. Potresti riuscire a mitigare il problema durante la compilazione dell'app specificando solo le API Google Play Services specifiche utilizzate dalla tua app, anziché tutte. Per informazioni su come fare, consulta Compilazione selettiva delle API nell'eseguibile.

  4. Salva le modifiche e fai clic su Sync Project with Gradle Files nella barra degli strumenti.

Altro IDE

Per rendere disponibili le API di Google Play Services per la tua app:

  1. Copia il progetto della biblioteca all'indirizzo <android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/ alla posizione in cui gestisci i progetti per le app per Android.
  2. Nel progetto dell'app, fai riferimento al progetto della libreria di Google Play Services. Consulta Fare riferimento a un progetto libreria sulla riga di comando per ulteriori informazioni su come fare.

    Nota: dovresti fare riferimento a una copia della raccolta a cui copiato nell'area di lavoro di sviluppo, non devi fare riferimento alla libreria direttamente dal Directory SDK Android.

  3. Dopo aver aggiunto la libreria di Google Play Services come dipendenza per il progetto dell'app, apri il file manifest dell'app e aggiungi il seguente tag come elemento secondario Elemento <application>:
    <meta-data android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    

Dopo aver impostato il progetto in modo che faccia riferimento al progetto della libreria, puoi iniziare a sviluppare funzionalità con API di Google Play Services.

Crea un'eccezione ProGuard

Per evitare Rimozione di ProGuard dall'eliminazione le classi obbligatorie, aggiungi le seguenti righe File /proguard-project.txt:

-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