Nota: Actualmente, las funciones descritas en esta página solo están disponibles para algunos partners de Google Play.
La protección automática de Google Play es un servicio que te ayuda a proteger tus aplicaciones y juegos frente a abusos de integridad llevados a cabo a través de la modificación y la redistribución no autorizadas. La protección automática funciona en tu aplicación sin una conexión de datos. Se puede activar con un solo clic en Play Console y no requiere trabajo de desarrollo antes de las pruebas ni integración con el servidor backend.
Cómo funciona
La protección automática añade comprobaciones en tiempo en ejecución al código de tu aplicación para impedir su modificación y redistribución, y luego hace que estas comprobaciones sean difíciles de eliminar mediante técnicas de ofuscación avanzada y de protección frente a la ingeniería inversa. Si no se supera la comprobación del instalador, se pedirá a los usuarios que descarguen tu aplicación en Google Play. En el caso de que no se supere la comprobación de modificación, la aplicación no se ejecutará. Esto contribuye a proteger a los usuarios frente al contenido dañino que puede aparecer en versiones modificadas de tu aplicación.
La protección automática se ha diseñado con los siguientes objetivos:
- Evitar la modificación no autorizada: la protección automática ayuda a proteger tu aplicación frente a modificaciones, haciendo que sea más difícil distribuir copias no oficiales con comportamientos alterados (como eliminar la facturación, añadir anuncios, cambiar el ID de propietario de los anuncios o añadir malware).
- Evitar la piratería de aplicaciones de pago: la protección automática evita la piratería mostrando un aviso a los usuarios que han obtenido la versión no modificada de Google Play de tu aplicación a través de una fuente no oficial. En el aviso, se les indica que compren la aplicación en Google Play. Este aviso es opcional y se puede desactivar desmarcando la opción "Requerir instalación desde Google Play" en la página de configuración de la protección de integridad automática.
- Aumentar la cantidad de usuarios que reciben actualizaciones oficiales: si un usuario ha instalado la versión no modificada de Google Play de tu aplicación a través de una fuente desconocida, la protección automática puede indicarle que la añada a su biblioteca de Google Play para que pueda recibir las actualizaciones continuas de la aplicación. Este aviso es opcional y se puede desactivar desmarcando la opción "Requerir instalación desde Google Play" en la página de configuración de la protección de integridad automática.
Configurar la protección automática
Los pasos indicados a continuación describen lo que tienes que hacer para empezar a utilizar la protección automática. Haz clic en una sección para ampliarla.
Si activas la protección automática en una aplicación, Google Play incorporará automáticamente la protección cuando crees una versión y esté lista para distribuirse entre los dispositivos. La protección requiere que Google Play cree APKs modificados y que los firme en tu nombre, por lo que debes hacer lo siguiente:
- Usar la firma de aplicaciones de Play.
- Publicar tus aplicaciones con Android App Bundles.
- Orientar tus aplicaciones al nivel 23 de la API o superior.
Debes tener en cuenta las siguientes limitaciones:
- La protección automática solo es compatible con Android 6.0 Marshmallow (nivel 23 de la API) y versiones posteriores. Android M se lanzó en el 2015 y, a partir del 2023, si las aplicaciones se orientan a una versión posterior a la 23 de midSDKVersion, se llega a más del 97 % de los dispositivos Android activos.
- La protección automática es compatible con las siguientes ABIs: x86, x86_64, armeabi-v7a y arm64-v8a. Para actualizar las ABIs a las que se orienta tu aplicación, modifica la configuración de Gradle. Puedes quitar de la segmentación otras ABIs no utilizadas por dispositivos Android activos sin que esto afecte a la disponibilidad de tu aplicación.
- La protección automática funciona sin conexión. Sin embargo, la opción "Requerir instalación desde Google Play" necesitará periódicamente una conexión de datos si la aplicación Play Store del dispositivo ha estado sin conexión durante un periodo prolongado.
- Si tu aplicación ya utiliza licencias de Google Play, desactiva la opción "Requerir instalación desde Google Play".
- Cuando subas tu aplicación para compartirla de forma interna, no se aplicará la protección. Ten la máxima precaución y comparte los enlaces de compartir aplicaciones de forma interna solo con miembros del equipo en quienes confíes. No compartas versiones no protegidas de forma externa.
- La protección automática no es compatible con la transparencia de código en los app bundles, ya que, para proteger la integridad, se tiene que modificar el código. Cuando se habilite la protección automática, se rechazarán los app bundles que se suban con transparencia de código.
- Las experiencias instantáneas no están protegidas. El app bundle de los canales de lanzamiento no debe estar habilitado al instante para obtener protección. Puedes subir de forma simultánea un app bundle a tu canal de lanzamiento que obtenga protección y un app bundle habilitado al instante a tu canal específico para aplicaciones instantáneas que no reciba protección.
Crea una versión siguiendo las instrucciones indicadas en el paso 1 del artículo Preparar y lanzar una versión.
Puedes activar la protección cuando crees una versión (según se indica en el paso 2 del artículo Preparar y lanzar una versión) o puedes activarla en la página Integridad de la aplicación (
Probar y publicar
> Integridad de la aplicación), que contiene los servicios de integridad y de firma que te ayudarán a asegurar que los usuarios disfruten de tus aplicaciones y juegos de la forma prevista.Cuando prepares tu versión, verás un botón con uno de estos mensajes: Consigue protección de integridad o Gestionar la protección de integridad. A continuación, haz clic en Sí, activar en "Protección automática". Luego, Google Play firmará tus versiones y protegerá su integridad para impedir la manipulación y la distribución no autorizadas. Esto significa que la protección automática está activada.
Termina de preparar la versión y guarda los cambios.
Utiliza cada uno de los canales de pruebas para probar la versión protegida de tu aplicación y asegurarte de que la experiencia de usuario o el rendimiento no se vean afectados de manera inesperada.
Te recomendamos que incluyas estos procedimientos en tu revisión:
- Prueba el lanzamiento de tu aplicación y verifica si se bloquea o se ralentiza al iniciarse.
- Prueba los momentos en los que el código nativo (C/C++) de tu aplicación vuelve a llamar a Java (en tu propio código o en bibliotecas de terceros), por ejemplo, en anuncios, almacenamiento de registros, integración con redes sociales, autenticación o funciones específicas de Android, como la gestión de permisos.
Si detectas problemas durante el proceso de pruebas, tienes la opción de recuperar una versión anterior de la protección automática que ya hayas utilizado en una versión anterior, o bien puedes desactivarla. Te recomendamos que no pases versiones no protegidas a canales abiertos o canales de producción.
Para desactivar la protección de integridad de una versión concreta, sigue estos pasos:
- Al preparar tu versión, haz clic en Gestionar la protección de integridad.
- En "Protección automática", selecciona Protección anterior o Desactivar protección en esta versión.
- Guarda los cambios. Los cambios se aplicarán a esta versión. La próxima vez que subas una versión, esta recibirá de nuevo la más reciente y eficaz de la protección.
Cuando lo tengas todo listo, puedes lanzar tu versión en un canal de producción de Play Console para poner tu aplicación protegida a disposición de todos los usuarios de Google Play de los países que hayas elegido.
Personalizar la ficha de Play Store cuando los usuarios accedan desde los cuadros de diálogo de protección de integridad
Si un usuario ha obtenido tu aplicación de forma no oficial, la protección automática puede indicarle que la descargue desde Google Play. Cuando los usuarios toquen el cuadro de diálogo, se les redirigirá a tu ficha de Play Store, donde podrán tocar el botón de descargar (o de comprar o actualizar) para obtener tu aplicación en Google Play y añadirla a su biblioteca de Google Play.
Puedes personalizar los recursos de tu ficha de Play Store para los visitantes que toquen cuadros de diálogo de protección de integridad, como el nombre, el icono, las descripciones y los recursos gráficos de tu aplicación. Para personalizar tu ficha de Play Store cuando los usuarios accedan desde un cuadro de diálogo de protección de integridad, sigue estos pasos:
- Abre Play Console y ve a la página Integridad de la aplicación (
Probar y publicar
> Integridad de la aplicación). - Desplázate hasta la sección "API Play Integrity".
- Haz clic en Configuración.
- Desplázate hasta la sección "Personalizar ficha de Play Store".
- Haz clic en Crear ficha.
- Sigue las instrucciones indicadas en la página Crear ficha de Play Store personalizada y haz clic en Guardar.
También puedes crear fichas de Play Store personalizadas para los cuadros de diálogo de protección de integridad directamente desde la página Fichas de Play Store personalizadas:
- Abre Play Console y ve a la página Fichas de Play Store personalizadas (Aumentar usuarios > Fichas de Play Store personalizadas).
- Haz clic en Crear ficha, elige si quieres crear una ficha nueva o duplicar una ya creada y haz clic en Siguiente.
- En la sección "Tu ficha", desplázate hasta Audiencia objetivo.
- Selecciona Por URL y escribe "playintegrity" en el cuadro de texto.
- Rellena los demás datos y haz clic en Guardar.
Nota: El parámetro de URL "playintegrity" es una palabra clave especial que está reservada para los enlaces profundos de integridad, por lo que debe introducirse de forma exacta y sin ninguna modificación al configurar la ficha de Play Store personalizada.
Prácticas recomendadas
No publiques versiones de aplicaciones no protegidas
Si publicas versiones no protegidas en canales abiertos o a través de otros canales ajenos a Google Play, la protección de tu aplicación dejará de funcionar. Para mantener la protección de integridad de tu aplicación, debes publicar únicamente versiones protegidas de tu aplicación en canales abiertos y canales de producción.
Ten cuidado al combinar varias soluciones de protección contra manipulaciones
Es posible que la protección automática no sea compatible con otras soluciones de protección contra manipulaciones en tiempo de ejecución. Si intentas usar varias soluciones a la vez, los usuarios podrían experimentar problemas. Si ya has implementado un servicio de licencias de Google Play en tu aplicación, debes inhabilitar la opción "Requerir instalación desde Google Play". Si tu aplicación protegida realiza otras comprobaciones en tiempo de ejecución, pruébala exhaustivamente para ver si hay algún problema antes de publicarla en canales abiertos.
Probar la aplicación protegida
Google Play enviará compilaciones protegidas de forma automática a todos los canales: de pruebas internas, cerrados, abiertos y de producción. Debes probar exhaustivamente estas versiones tal y como lo haces habitualmente.
Si subes la compilación de tu aplicación directamente a la función de compartir aplicaciones de forma interna, Google Play no añadirá protecciones. Esto te permite usar la función de compartir aplicaciones de forma interna para subir versiones de depuración y otras compilaciones similares.
Cuando accedes al enlace para compartir aplicaciones de forma interna de la versión protegida de una aplicación en el explorador de app bundles, la compilación se comparte tal y como Google Play la ha procesado. Si esa versión se ha subido a un canal de pruebas y está protegida, el enlace para compartir aplicaciones de forma interna del explorador de app bundles mostrará una versión protegida. Puedes consultar el estado de la protección en la pestaña Detalles del explorador de app bundles.
Monitorizar los fallos
Es posible que observes un aumento de los fallos debido a que tu aplicación está protegida. Posiblemente, esto es indicativo de que la protección automática funciona según lo previsto. Si un atacante modifica tu aplicación sin éxito, la comprobación en tiempo de ejecución impedirá que se ejecute tu aplicación, y lo más probable es que la bloquee.
Los fallos que no se atribuyen a Google Play no afectan a las métricas de estabilidad de Android vitals. Si utilizas otras herramientas para analizar los fallos de tu aplicación (como Crashlytics) y necesitas un nombre de paquete para filtrar los resultados por fuente de instalación, el nombre del paquete en Google Play Store será "com.android.vending".
Si te preocupa que haya un aumento repentino de los fallos, puedes informarnos sobre ellos con el mayor nivel de detalle posible y el equipo pertinente los analizará. Responderemos a tu solicitud si determinamos que los fallos están relacionados con la protección.
Denunciar versiones craqueadas de tu aplicación
Las versiones craqueadas son versiones de tu aplicación que funcionan aunque se hayan modificado o aunque se hayan instalado fuera de Google Play cuando has requerido que se instalen desde Google Play.
Si identificas una versión craqueada de tu aplicación, puedes notificárnoslo.
Mejorar la protección contra manipulaciones
Si compartes con Google Play la telemetría de la aplicación, como los datos anonimizados de entorno y rendimiento, nos ayudas a mejorar la resiliencia y el rendimiento de la protección contra manipulaciones. Puedes inhabilitar la opción de compartir la telemetría de la aplicación desactivando "Compartir con Google la telemetría de la aplicación" en la página Ajustes de protección automática (
Probar y publicar
> Integridad de la aplicación y desplázate hacia abajo hasta Protección automática). Más información sobre cómo se usan los datos para desarrollar servicios de GoogleContenido relacionado
- Consulta este vídeo sobre la protección automática.
- Consulta información sobre los servicios de integridad y de firma en Play Console.
- Obtén información sobre los servicios de integridad y de firma en el sitio Android para desarrolladores.