Pré-requisitos
- Instale a versão mais recente do SDK do Android usando o SDK Manager do Android.
- Instale a versão mais recente das bibliotecas AndroidX appcompat e mediarouter usando o SDK Manager do Android.
- Instale o SDK do Cast mais recente no Google Play Services usando o SDK Manager do Android.
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 dá 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 do usuário, já que as atualizações podem não chegar a todos os usuários imediatamente.
Adicionar o Google Play Services ao seu projeto
Selecione seu ambiente de desenvolvimento abaixo e adicione o Google Play Services ao seu projeto seguindo as etapas fornecidas.
Android Studio
Para disponibilizar as APIs do Google Play Services para 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 Como criar seu projeto com o Gradle para mais informações sobre o Gradle. - Verifique se
google()está incluído norepositorieslistado.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:23.0.0' }
Atualize esse número sempre que o Google Play Services for atualizado.
Observação: se o número de referências de método no app exceder o limite de 65 mil, talvez não seja possível compilar o app. Para reduzir esse problema ao compilar o app, especifique apenas as APIs do Google Play Services que ele usa, em vez de todas elas. Para saber como fazer isso, consulte Compilar APIs de forma seletiva no executável.
- Salve as mudanças 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 para seu app:
- Copie o projeto da biblioteca em
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/para o local em que você mantém os projetos de apps Android. - No projeto do app, faça referência ao projeto da biblioteca do Google Play Services. Consulte
Como referenciar um projeto de biblioteca na linha de comando para saber mais sobre como fazer isso.
Observação: faça referência a uma cópia da biblioteca que você copiou para seu espaço de trabalho de desenvolvimento. Não faça referência à 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 elemento
<application>:<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
Depois de configurar seu 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 evitar que o
ProGuard remova
as classes necessárias, adicione as seguintes linhas ao
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