Configuración para desarrollar con el framework de aplicaciones de Cast (CAF) para Android
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Requisitos previos
El SDK de Google Cast para Android forma parte del SDK de Servicios de Google Play y no es necesario descargarlo por separado.
Nota: Los Servicios de Google Play te brindan acceso a una variedad de APIs para crear anuncios, recopilar estadísticas, autenticar usuarios, integrar mapas y mucho más. Para obtener más información, consulta la Descripción general de los Servicios de Google Play.
Es importante que te asegures de que esté instalado el APK correcto de los Servicios de Google Play en el dispositivo del usuario, ya que es posible que las actualizaciones no lleguen a todos los usuarios de inmediato.
Agrega los Servicios de Google Play a tu proyecto
Selecciona tu entorno de desarrollo a continuación y agrega los Servicios de Google Play a tu proyecto siguiendo los pasos proporcionados.
Android Studio
Para que las APIs de los Servicios de Google Play estén disponibles en tu app, haz lo siguiente:
- Abre el archivo
build.gradle
dentro del directorio del módulo de tu aplicación.
Nota: Los proyectos de Android Studio contienen un archivo build.gradle
de nivel superior y un archivo build.gradle
para cada módulo. Asegúrate de editar el archivo de tu módulo de aplicación. Consulta
Cómo compilar tu proyecto con Gradle para obtener más información sobre Gradle.
- Verifica que
google()
esté incluido en el repositories
que aparece en la lista.
repositories {
google()
}
- Agrega una nueva regla de compilación en
dependencies
para la versión más reciente de play-services
. Por ejemplo:
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.1.0'
}
Asegúrate de actualizar este número de versión cada vez que se actualicen los Servicios de Google Play.
Nota: Si la cantidad de referencias a métodos en tu app supera el límite de 65,000, es posible que la app no se compile. Para mitigar este problema, cuando compiles tu app, especifica solo las APIs de los Servicios de Google Play que usa tu app, en lugar de todas. Para obtener información sobre cómo hacerlo, consulta Cómo compilar APIs de forma selectiva en tu ejecutable.
- Guarda los cambios y haz clic en Sync Project with Gradle Files en la barra de herramientas.
Otro IDE
Para que las APIs de los Servicios de Google Play estén disponibles en tu app, haz lo siguiente:
- Copia el proyecto de biblioteca en
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/
a la ubicación donde mantienes tus proyectos de apps para Android.
- En el proyecto de tu app, haz referencia al proyecto de biblioteca de los Servicios de Google Play. Consulta
Cómo hacer referencia a un proyecto de biblioteca en la línea de comandos para obtener más información sobre cómo hacerlo.
Nota: Debes hacer referencia a una copia de la biblioteca que copiaste en tu espacio de trabajo de desarrollo. No debes hacer referencia a la biblioteca directamente desde el directorio del SDK de Android.
- Después de agregar la biblioteca de los Servicios de Google Play como dependencia para el proyecto de tu app, abre el archivo de manifiesto de la app y agrega la siguiente etiqueta como elemento secundario del elemento
<application>
:
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
Una vez que hayas configurado tu proyecto para que haga referencia al proyecto de biblioteca, puedes comenzar a desarrollar funciones con las
APIs de los Servicios de Google Play.
Crea una excepción de Proguard
Para evitar que ProGuard quite las clases requeridas, agrega las siguientes líneas en el archivo /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
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-09-05 (UTC)
[null,null,["Última actualización: 2025-09-05 (UTC)"],[[["\u003cp\u003eEnsure you have the latest Android SDK, appcompat, mediarouter AndroidX Libraries, and Google Cast SDK installed via the Android SDK Manager.\u003c/p\u003e\n"],["\u003cp\u003eAdd Google Play Services to your project by modifying your \u003ccode\u003ebuild.gradle\u003c/code\u003e file (Android Studio) or referencing the library project and updating the manifest (Other IDEs).\u003c/p\u003e\n"],["\u003cp\u003eIf using ProGuard, include specific exceptions in your configuration file to prevent the removal of necessary Google Play services classes.\u003c/p\u003e\n"]]],[],null,["# Setup for Developing with the Cast Application Framework (CAF) for Android\n\nPrerequisites\n-------------\n\n- Install the latest version of the Android SDK using the [Android SDK\n Manager](//developer.android.com/tools/help/sdk-manager.html).\n- Install the latest version of the appcompat and mediarouter [AndroidX\n Libraries](//developer.android.com/jetpack/androidx) through the [Android SDK\n Manager](//developer.android.com/tools/help/sdk-manager.html).\n- Install the latest [Cast SDK in Google Play\n services](//developer.android.com/google/play-services/setup.html) through the [Android SDK\n Manager](//developer.android.com/tools/help/sdk-manager.html).\n\nThe Google Cast SDK for Android is part of the Google Play services SDK and does\nnot need to be downloaded separately.\n\n**Note** : Google Play services gives you access to a [range of\nAPIs](/android) for building ads, collecting analytics, authenticating users,\nintegrating maps, and much more. For more information, see [Overview of Google Play\nServices](/android/guides/overview).\nIt is important for you to [ensure that the correct Google Play services APK is\ninstalled](/android/guides/setup#ensure_devices_have_the_google_play_services_apk)\non a user's device since updates might not reach all users immediately.\n| **Note:** Since the libraries contribute resources, you cannot simply satisfy the dependencies by including their JAR files; instead you need to [import them as\n| library\n| projects](//developer.android.com/tools/support-library/setup.html#libs-with-res) for your IDE.\n\nAdd Google Play Services to your project\n----------------------------------------\n\n\nSelect your development environment below and add Google Play services to your project by\nfollowing the steps provided. \n\n### Android Studio\n\nTo make the Google Play services APIs available to your app:\n\n1. Open the `build.gradle` file inside your application module directory.\n\n **Note:** Android Studio projects contain a top-level\n `build.gradle` file and a `build.gradle` file for each module. Be sure to\n edit the file for your application module. See\n [Building Your Project with Gradle](//developer.android.com/sdk/installing/studio-build.html) for more information about Gradle.\n2. Verify that `google()` is included in the listed `repositories`. \n\n repositories {\n google()\n }\n\n3. Add a new build rule under `dependencies` for the latest version of `play-services`. For example: \n\n ```carbon\n apply plugin: 'com.android.application'\n ...\n\n dependencies {\n implementation 'androidx.appcompat:appcompat:1.3.1'\n implementation 'androidx.mediarouter:mediarouter:1.2.5'\n implementation 'com.google.android.gms:play-services-cast-framework:22.1.0'\n }\n ```\n\n Be sure you update this version number each time Google Play services is updated.\n\n **Note:** If the number of method references in your app exceeds the\n [65K limit](//developer.android.com/tools/building/multidex.html), your app may fail to\n compile. You may be able to mitigate this problem when compiling your app by specifying only\n the specific Google Play services APIs your app uses, instead of all of them. For information\n on how to do this, see\n [Selectively compiling APIs into your executable](/android/guides/setup#split).\n4. Save the changes and click **Sync Project with Gradle Files** in the toolbar.\n\n### Other IDE\n\nTo make the Google Play services APIs available to your app:\n\n1. Copy the library project at `\u003candroid-sdk\u003e/extras/google/google_play_services/libproject/google-play-services_lib/` to the location where you maintain your Android app projects.\n2. In your app project, reference the Google Play services library project. See [Referencing a Library Project on the Command Line](//developer.android.com/tools/projects/projects-cmdline.html#ReferencingLibraryProject) for more information on how to do this.\n\n **Note:** You should be referencing a copy of the library that you\n copied to your development workspace---you should not reference the library directly from the\n Android SDK directory.\n3. After you've added the Google Play services library as a dependency for your app project, open your app's manifest file and add the following tag as a child of the [`\u003capplication\u003e`](//developer.android.com/guide/topics/manifest/application-element.html) element: \n\n ```transact-sql\n \u003cmeta-data android:name=\"com.google.android.gms.version\"\n android:value=\"@integer/google_play_services_version\" /\u003e\n ```\n\nOnce you've set up your project to reference the library project, you can begin developing\nfeatures with the\n[Google Play services APIs](/android/reference/com/google/android/gms/package-summary).\n\n#### Create a Proguard exception\n\nTo prevent\n[ProGuard](//developer.android.com/tools/help/proguard.html) from stripping away\nrequired classes, add the following lines in the\n/proguard-project.txt file: \n\n```carbon\n-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {\n public static final *** NULL;\n}\n\n-keepnames class * implements android.os.Parcelable\n-keepclassmembers class * implements android.os.Parcelable {\n public static final *** CREATOR;\n}\n\n-keep @interface android.support.annotation.Keep\n-keep @android.support.annotation.Keep class *\n-keepclasseswithmembers class * {\n @android.support.annotation.Keep \u003cfields\u003e;\n}\n-keepclasseswithmembers class * {\n @android.support.annotation.Keep \u003cmethods\u003e;\n}\n\n-keep @interface com.google.android.gms.common.annotation.KeepName\n-keepnames @com.google.android.gms.common.annotation.KeepName class *\n-keepclassmembernames class * {\n @com.google.android.gms.common.annotation.KeepName *;\n}\n\n-keep @interface com.google.android.gms.common.util.DynamiteApi\n-keep public @com.google.android.gms.common.util.DynamiteApi class * {\n public \u003cfields\u003e;\n public \u003cmethods\u003e;\n}\n\n-dontwarn android.security.NetworkSecurityPolicy\n```"]]