Evita las modificaciones y redistribuciones no autorizadas con la protección automática de la integridad

Nota: Las funciones que se describen en esta página solo están disponibles para socios de Play específicos.

La protección automática de la integridad de Google Play es un servicio que te ayuda a proteger tus apps y juegos contra el abuso de integridad en forma de modificaciones y redistribuciones no autorizadas. La protección automática de la integridad funciona en tu app sin conexión de datos. Se puede activar con un clic en Play Console y no requiere el trabajo de los desarrolladores antes de la prueba ni integración del servidor de backend.

Cómo funciona

La protección automática de la integridad agrega verificaciones de tiempo de ejecución al código de tu app a fin de restringir las modificaciones y redistribuciones, y hace que sea difícil quitar esas verificaciones mediante técnicas avanzadas de ofuscación y contra ingeniería inversa. Si falla la verificación del instalador, se solicitará a los usuarios que descarguen tu app de Google Play. Si falla la verificación de modificaciones, no se ejecutará la app. Esto ayuda a mantener a los usuarios protegidos contra el contenido dañino que podría aparecer en versiones modificadas de las apps.

La función Protección automática de la integridad está diseñada con los siguientes objetivos:

  • Evitar modificaciones no autorizadas: Protección automática de la integridad ayuda a proteger tu app contra modificaciones, lo que dificulta la distribución de copias no oficiales con comportamientos alterados (como la eliminación de la facturación, la incorporación de anuncios, el cambio del ID de propietario de los anuncios o la implementación de software malicioso).
  • Evitar la piratería de aplicaciones pagadas: Para evitar la piratería, Protección automática de la integridad muestra un mensaje a los usuarios que obtuvieron la versión de Play no modificada de tu app a través de una fuente no oficial para alentarlos a que la compren en Google Play. El mensaje es opcional y se puede desactivar si se desmarca la opción de requerir la instalación desde Play en la página de configuración de Protección automática de la integridad.
  • Aumentar la cantidad de usuarios que reciben actualizaciones oficiales: Protección automática de la integridad puede mostrarles un mensaje a los usuarios que hayan transferido la versión de Play no modificada de tu app para alentarlos a que la agreguen a su biblioteca de Play y, así, garantizar que puedan recibir las actualizaciones de la app en curso. El mensaje es opcional y se puede desactivar si se desmarca la opción de requerir la instalación desde Play en la página de configuración de Protección automática de la integridad.
Importante: Protección automática de la integridad no garantiza la prevención de todos los tipos de piratería informática, modificación y reempaquetado, y redistribución. Lo que en efecto hace es que estas acciones sean más complejas y costosas, de modo que reduce las probabilidades de que tengan éxito. Google Play reforzará la función Protección automática de la integridad de forma continua para que las nuevas versiones de tu app obtengan automáticamente la versión más reciente y desarrollada de la protección.

Configura la protección automática de la integridad

En los pasos que aparecen a continuación, se describe lo que debes hacer para comenzar a usar protecciones automáticas de la integridad. Haz clic en cada sección para expandirla.

Requisitos previos

Si activas la protección automática de la integridad para una app en particular, Google Play agregará protección automáticamente cuando crees cada versión lista para su distribución a dispositivos. La protección requiere que Google Play cree APK modificados y los firme en tu nombre, por lo que debes hacer lo siguiente:

Ten en cuenta las siguientes restricciones:

  • La protección automática de la integridad es compatible únicamente con Android 6.0 Marshmallow (nivel de API 23) y versiones posteriores. Android M se lanzó en 2015 y, a partir del 2023, orientar las apps a una versión de SDK intermedia posterior a la 23 permite un alcance a más del 97% de los dispositivos Android activos.
  • Protección automática de la integridad admite las siguientes ABI: x86, x86_64, armeabi-v7a y arm64-v8a. Para actualizar las ABI segmentadas de tu app, actualiza la configuración de Gradle. Puedes quitar de tu segmentación otras ABI que no usen los dispositivos Android activos sin afectar la disponibilidad de la app.
  • La protección automática de la integridad funciona sin conexión. Sin embargo, si la app de Play Store del dispositivo estuvo sin conexión durante un período prolongado, la opción de requerir la instalación desde Play necesitará una conexión de datos en algún momento.
  • Si tu app ya usa licencias de Play, debes desactivar la opción Requerir la instalación desde Google Play.
  • Cuando subes tu app para el uso compartido interno de apps, no se aplica la protección. Ten la debida precaución de compartir vínculos del uso compartido interno de apps únicamente con miembros de tu equipo en quienes confíes y de no compartir versiones desprotegidas a nivel externo.
  • La protección automática de la integridad no es compatible con la transparencia de código para paquetes de aplicaciones, ya que es una función que implica la modificación del código. Cuando esté habilitada Protección automática de la integridad, se rechazarán los paquetes de aplicaciones que se suban con transparencia de código.
  • Las experiencias instantáneas no están protegidas. Para obtener protección, el paquete de aplicación de tus segmentos no debe estar habilitado instantáneamente. Puedes subir de forma simultánea un paquete de aplicación al segmento que recibe protección y uno habilitado instantáneamente al segmento dedicado a apps instantáneas, que no recibe protección.
Paso 1: Activa la protección

Crea una versión como se describe en el paso 1 del artículo Prepara y lanza una versión.

Puedes activar la protección al crear una versión (como se describe en el paso 2 de Prepara y lanza una versión) o desde la página Integridad de la app (Versión > Integridad de la app), donde se incluyen servicios de integridad y firma que te ayudan a garantizar que los usuarios experimenten tus apps y juegos de la manera que deseas.

Al momento de preparar la versión, verás un botón que dice Obtener protección de la integridad o Administrar la protección de la integridad. Luego, haz clic en Sí, activar para activar la protección de la integridad en "Protección automática de la integridad". Google Play firmará tus versiones y agregará protección de la integridad para restringir las manipulaciones y los abusos de distribución. Esto significa que la protección automática de la integridad está activada.

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

Paso 2: Prueba tu app protegida

Usa cada uno de los segmentos de pruebas para evaluar la versión protegida de la app y asegurarte de que no afecte de forma inesperada la experiencia del usuario ni el rendimiento.

Recomendamos incluir las siguientes acciones en la revisión:

  • Prueba la inicialización del juego en busca de fallas y cualquier señal de lentitud en el tiempo de inicio.
  • Prueba momentos en los que tu código nativo (C/C++) realiza llamadas a Java (a tu propio código o bibliotecas de terceros), como en el caso de anuncios, registros, integración con redes sociales, autenticación o funciones específicas de Android (p. ej., el manejo de permisos).

Si se producen problemas durante el proceso de prueba, puedes volver a una versión anterior de Protección automática de la integridad que posiblemente hayas usado en un lanzamiento anterior o puedes desactivar la protección automática de la integridad. En esos casos, te recomendamos que no promuevas versiones desprotegidas a segmentos abiertos ni de producción.

Si quieres desactivar la protección de la integridad para una versión individual, sigue estos pasos:

  1. Cuando prepares la versión, haz clic en Administrar la protección de la integridad.
  2. En "Protección automática de la integridad", selecciona Protección anterior o Desactivar la protección para esta versión.
  3. Guarda los cambios (se aplicarán a esta versión). La próxima vez que subas una versión, esta recibirá la protección más reciente y segura.
Paso 3: Promueve tu app al segmento de producción

Cuando esté todo listo, podrás lanzar la versión a un segmento de producción en Play Console, lo que hará que tu app protegida esté disponible para todos los usuarios de Google Play en los países que elijas.

Cómo personalizar la ficha de Play Store que los usuarios visitan desde los diálogos de protección de la integridad

La protección automática de la integridad puede solicitar a los usuarios que obtuvieron tu app de manera no oficial que la descarguen en Google Play. Cuando los usuarios presionan el diálogo, se los redirecciona a la ficha de Play Store, donde pueden presionar el botón de instalación (o de compra o actualización) para obtener tu app en Play y agregarla a su biblioteca de Play.

Puedes personalizar los recursos de la ficha de Play Store, incluidos el nombre, el ícono, las descripciones y los recursos gráficos de la app, para los visitantes que presionen los diálogos de protección de la integridad. Para personalizar la ficha de Play Store que ven los usuarios que la visitan desde un diálogo de protección de la integridad, sigue estos pasos:

  1. Abre Play Console y ve a la página Integridad de la app (Versión > Integridad de la app).
  2. Desplázate hasta la sección "API de Play Integrity".
  3. Haz clic en Configuración.
  4. Desplázate hasta la sección "Personaliza las fichas de Play Store".
  5. Haz clic en Crear ficha.
  6. Sigue las instrucciones de la página Crea una ficha de Play Store personalizada y haz clic en Guardar.

Como alternativa, puedes crear las fichas de Play Store personalizadas para los diálogos de protección de la integridad directamente en 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 deseas crear una ficha nueva o duplicar una existente, y haz clic en Siguiente.
  3. En la sección "Detalles de la ficha", desplázate hasta Público objetivo.
  4. Selecciona Por URL y, luego, ingresa "playintegrity" en el cuadro de texto.
  5. Completa los demás detalles y haz clic en Guardar.

Nota: El parámetro de URL "playintegrity" es una palabra clave especial que se reserva para los vínculos directos de integridad, por lo que se debe ingresar de manera exacta y sin alteraciones al configurar la ficha de Play Store personalizada.

Prácticas recomendadas

No lances versiones de apps desprotegidas

Si publicas versiones desprotegidas en segmentos abiertos o a través de otros canales fuera de Google Play, dejará de funcionar la protección de las apps. Para mantener la protección de la integridad, debes publicar únicamente versiones protegidas de tu app en los segmentos abiertos y de producción.

Ten cuidado a la hora de combinar soluciones de protección contra manipulaciones

Es posible que Protección automática de la integridad no sea compatible con otras soluciones contra manipulaciones en tiempo de ejecución, y usarlas en conjunto podría ocasionarles problemas a los usuarios. Si ya estás implementando las licencias de Play en tu app, debes inhabilitar la opción "Requerir la instalación desde Google Play". Si tu app realiza otras verificaciones de tiempo de ejecución, asegúrate de probar minuciosamente la app protegida para detectar si hay problemas antes de lanzarla a los segmentos abiertos.

Prueba tu app protegida

Google Play publicará de forma automática compilaciones protegidas en todos los segmentos, es decir, los abiertos, cerrados, de pruebas internas y de producción. Debes probar estas versiones de manera exhaustiva con el procedimiento habitual.

Si subes la compilación de tu app directamente al uso compartido interno de apps, Google Play no agregará protecciones. Esto tiene como fin permitirte emplear el uso compartido interno de apps para subir compilaciones de depuración y otras similares.

Cuando accedes al vínculo de uso compartido interno de apps de una versión protegida de la app en el explorador de paquetes de aplicaciones, se comparte la compilación exactamente como la procesó Google Play. Si esa versión de la app se subió a un segmento de pruebas y estaba protegida, el vínculo de uso compartido interno de apps del explorador de paquetes de aplicaciones publicará una versión protegida. Puedes ver el estado de protección en la pestaña Detalles del explorador de paquetes de aplicaciones.

Supervisa las fallas

Es posible que notes un aumento en las fallas que se atribuyen a las protecciones de la app, lo cual probablemente indica que la protección automática de la integridad funciona según lo previsto. Si un atacante intenta modificar tu app y no lo logra, la verificación en el tiempo de ejecución impedirá que esta se ejecute, principalmente mediante una falla en la app.

Las fallas que no se atribuyen a Google Play no afectan tus métricas de estabilidad de Android vitals. Si usas otras herramientas para analizar las fallas (como Crashlytics) y necesitas un nombre de paquete para filtrar por fuente de instalación, el nombre del paquete de Google Play Store es "com.android.vending".

Si te preocupa un aumento desfavorable en las fallas, infórmanos los casos con la mayor cantidad de detalles posible, y el equipo los investigará. Si determinamos que las fallas se relacionan con la protección, responderemos a tu informe.

Denuncia versiones de tu app vulneradas con piratería informática

Las versiones de apps vulneradas con piratería informática son las que siguen funcionando a pesar de haber sido modificadas o que se instalaron desde una fuente externa cuando en realidad requieres la instalación desde Google Play.

Si identificaste una versión de tu app vulnerada con piratería informática, puedes denunciarla.

Contenido relacionado

¿Te resultó útil esto?

¿Cómo podemos mejorarla?

¿Necesitas más ayuda?

Prueba estos próximos pasos:

Búsqueda
Borrar búsqueda
Cerrar la búsqueda
Menú principal
17220860296685597981
true
Buscar en el Centro de asistencia
true
true
true
true
true
92637
false
false