Impedir la modificación y la distribución no autorizadas con la protección de integridad automática

Nota: Actualmente, las funciones descritas en esta página solo están disponibles para algunos partners de Google Play.

La protección de integridad 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 modificaciones y redistribuciones no autorizadas. La protección de integridad 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 de integridad automática añade comprobaciones del 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 de integridad automática se ha diseñado con los siguientes objetivos:

  • Evitar la modificación no autorizada: la protección de integridad automática ayuda a proteger tu aplicación frente a modificaciones, lo que dificulta la distribución de 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 de integridad 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 de integridad 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.
Importante: La protección de integridad automática no garantiza que se impidan todas las formas de craqueo, piratería, reempaquetado y redistribución. Gracias a la protección de integridad automática, estas acciones son más complejas y costosas, por lo que es menos probable que tengan éxito. Google Play reforzará continuamente la protección de integridad automática para que las nuevas versiones de tu aplicación obtengan automáticamente la versión más reciente y potente de la protección.

Configurar la protección de integridad automática

Los pasos indicados a continuación describen lo que tienes que hacer para empezar a utilizar la protección de integridad automática. Haz clic en una sección para ampliarla.

Requisitos previos

Si activas la protección de integridad 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:

Debes tener en cuenta las siguientes limitaciones:

  • La protección de integridad 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 un midSDK, se llega a más del 97 % de los dispositivos Android activos.
  • La protección de integridad 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 de integridad 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 de integridad 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 de integridad 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.
Paso 1: Activa la 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 (Versión > 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 de integridad 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 de integridad automática está activada.

Termina de preparar la versión y guarda los cambios.

Paso 2: Prueba tu aplicación protegida

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 prueba, tienes la opción de recuperar una versión anterior de la protección de integridad 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:

  1. Al preparar tu versión, haz clic en Gestionar la protección de integridad.
  2. En "Protección de integridad automática", selecciona Protección anterior o Desactivar protección en esta versión.
  3. 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.
Paso 3: Lanza tu aplicación en el canal de producció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 de integridad 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 instalar (o de comprar o actualizar) para descargar tu aplicación desde 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:

  1. Abre Play Console y ve a la página Integridad de la aplicación (Versión > Integridad de la aplicación).
  2. Desplázate hasta la sección "API Play Integrity".
  3. Haz clic en Ajustes.
  4. Desplázate hasta la sección "Personalizar ficha de Play Store".
  5. Haz clic en Crear ficha.
  6. 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:

  1. Abre Play Console y ve a la página Fichas de Play Store personalizadas (Crecimiento > Fichas de Play Store personalizadas).
  2. Haz clic en Crear ficha, elige si quieres crear una ficha nueva o duplicar una ya creada y haz clic en Siguiente.
  3. En la sección "Tu ficha", desplázate hasta Audiencia objetivo.
  4. Selecciona Por URL y escribe "playintegrity" en el cuadro de texto.
  5. 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 de integridad 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 de integridad 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.

Contenido relacionado

¿Te ha resultado útil esta información?

¿Cómo podemos mejorar esta página?
Búsqueda
Borrar búsqueda
Cerrar búsqueda
Menú principal
3529240972144096579
true
Buscar en el Centro de ayuda
true
true
true
true
true
92637
false
false