Pré-requisitos
- Instale a versão mais recente do SDK do Android usando o Android SDK Manager.
- Instale a versão mais recente das bibliotecas AndroidX appcompat e mediarouter pelo SDK do Android Manager.
- Instale o SDK do Cast mais recente no Google Play Services pelo SDK do Android Manager.
O SDK do Google Cast para Android faz parte do SDK do Google Play Services e não precisa ser baixado separadamente.
Observação: o Google Play Services oferece acesso a uma variedade de APIs para criar anúncios, coletar análises, autenticar usuários, integrar mapas e muito mais. Para mais informações, consulte Visão geral do Google Play Services. É importante garantir que o APK correto do Google Play Services esteja instalado no dispositivo de um usuário, já que as atualizações podem não chegar a todos os usuários imediatamente.
Adicionar o Google Play Services ao projeto
Selecione seu ambiente de desenvolvimento abaixo e adicione o Google Play Services ao projeto seguindo as etapas fornecidas.
Android Studio
Para disponibilizar as APIs do Google Play Services ao seu app:
- Abra o arquivo
build.gradleno diretório do módulo do aplicativo.Observação:os projetos do Android Studio contêm um arquivo
build.gradlede nível superior e um arquivobuild.gradlepara cada módulo. Edite o arquivo do módulo do aplicativo. Consulte Criar seu projeto com o Gradle para mais informações sobre o Gradle. - Verifique se
google()está incluído nosrepositorieslistados.repositories {google() } - Adicione uma nova regra de build em
dependenciespara a versão mais recente doplay-services. Exemplo: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.3.1' }
Atualize esse número de versão sempre que o Google Play Services for atualizado.
Observação:se o número de referências de método no seu app exceder o limite de 65 mil, o app poderá falhar na compilação. É possível atenuar esse problema ao compilar o app especificando apenas as APIs específicas do Google Play Services que ele usa, em vez de todas elas. Para informações sobre como fazer isso, consulte Compilar APIs seletivamente no executável.
- Salve as alterações e clique em Sync Project with Gradle Files na barra de ferramentas.
Outro ambiente de desenvolvimento integrado
Para disponibilizar as APIs do Google Play Services ao seu app:
- Copie o projeto de biblioteca em
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/para o local em que você mantém seus projetos de apps Android. - No projeto do app, referencie o projeto de biblioteca do Google Play Services. Consulte
Referenciar um Projeto Biblioteca na linha de comando para mais informações sobre como fazer isso.
Observação:você precisa referenciar uma cópia da biblioteca que copiou para o espaço de trabalho de desenvolvimento. Não referencie a biblioteca diretamente do diretório do SDK do Android.
- Depois de adicionar a biblioteca do Google Play Services como uma dependência do projeto do app,
abra o arquivo de manifesto do app e adicione a seguinte tag como filha do
<application>elemento:<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
Depois de configurar o projeto para referenciar o projeto de biblioteca, você pode começar a desenvolver recursos com as APIs do Google Play Services.
Criar uma exceção do Proguard
Para impedir que o
ProGuard remova as
classes necessárias, adicione as seguintes linhas no
arquivo:
-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