android - instalar - aplicación de instalación bloqueada por play protect
play protect bloqueo la instalacion (10)
Cuando se intenta instalar una aplicación firmada (app-release.apk), se muestra una alerta de "Bloqueado por Play Protect" y la aplicación no está instalada. Sin embargo, una aplicación sin firmar (app-debug.apk) se puede instalar sin problemas.
El mensaje de error:
Play Protect no reconoce al desarrollador de esta aplicación. Las aplicaciones de desarrolladores desconocidos a veces pueden ser inseguras.
¿Por qué ocurrió este error? ¿Cual es la solución?
Encontré la solución: vaya al siguiente enlace y envíe su solicitud.
Formulario de presentación de apelaciones de Play Protect
Después de unos días, el problema será solucionado.
Estoy agregando esta respuesta para otras personas que aún están buscando una solución a este problema si no desea cargar su aplicación en la tienda de juegos, entonces hay una solución temporal para este problema.
Google proporciona una api de verificación de dispositivo de seguridad a la que debe llamar solo una vez en su aplicación y, a continuación, su aplicación no será bloqueada por play protect:
Aquí están los enlaces:
https://developer.android.com/training/safetynet/attestation#verify-attestation-response
Enlace para proyecto de código de muestra:
Google Play te encuentra como desarrollador a través de tu almacén de claves .
y tal vez la IP de su país esté prohibida en Google cuando genere su nuevo almacén de claves.
cambie su dirección IP y genere un nuevo almacén de claves, el problema se solucionará.
Si no tuvo éxito, use otro Gmail en Android Studio y genere un nuevo almacén de claves.
Hay tres opciones para deshacerse de esta advertencia:
- Debe desactivar Play Protect en Play Store -> Play Protect -> Icono de configuración -> Analizar dispositivo en busca de amenazas de seguridad
- Publicar aplicación en Google Play Store
- Presentar una apelación a la Play Protect .
He encontrado la mejor solución. Si quieres resolver este problema, debes abrir tu tienda de juegos, en el menú encuentra Play Protect y y desmarque el dispositivo de exploración para detectar amenazas de seguridad .
Intente crear un nuevo almacén de claves y reemplácelo con el anterior, luego reconstruya un nuevo APK firmado.
Actualización: tenga en cuenta que si está utilizando una conexión http con el servidor, debe usar SSL.
Eche un vistazo a: https://developer.android.com/distribute/best-practices/develop/understand-play-policies
La solución está en crear una nueva clave al generar el apk firmado. esto me funcionó sin problemas.
- haga clic en Construir
- haga clic en generar firmado Bundle / APK ...
- Elija Bundle / APK (en mi caso, APK) y haga clic en Siguiente
- haga clic en crear nuevo (asegúrese de tener una ruta de almacén de claves en la máquina)
- Después de todo, haga clic en Finalizar para generar su apk firmado
Cuando lo instales, la advertencia no llegará.
No es la solución, pero puede usar la clave de depuración para firmar las compilaciones de
lanzamiento
para evitar el bloqueo de la instalación desde Google Play Protect.
Parece que Play Protect no advierte sobre construcciones firmadas con
debug.keystore
generado automáticamente.
Tenga en cuenta que las compilaciones de depuración no están sin firmar , simplemente se firman con una clave de depuración .
Por supuesto, no puede usar la compilación para la distribución de producción (Google Play, Amazon, etc.), pero todavía vale la pena para las pruebas internas de preproducción que requieren un ciclo de retroalimentación de alta frecuencia.
Puede agregar una tarea para compilar la versión con debug.keystore agregando la configuración en
build.gradle
, algo como:
android {
buildTypes {
// add after the `release` definition
releaseDebugKey { initWith release }
}
signingConfigs {
// use debug.keystore for releaseDebugKey builds
releaseDebugKey { initWith debug }
}
}
luego ejecute
./gradlew assembleReleaseDebugKey
para crear una versión de compilación con clave de depuración.
Si está utilizando algunos rastreadores como
google analytics
o
amplitude
y está intentando lanzar su aplicación en otra plataforma que no sea
Google Play
, estos errores aparecen para los usuarios.
Así que hay dos soluciones posibles:
- Use rastreadores especiales en su aplicación (firebase y appmetrica están probados y están bien)
-
Libera tu aplicación en
Google Play
la única solución que me funcionó fue usar java keytool y generar un archivo.
keystore
archiva la línea de comandos y luego usa ese archivo
.keystore
para firmar mi aplicación
puede encontrar la herramienta Java en este directorio
C:/Program Files/Java/jre7/bin
abra una ventana de comando y cambie a ese directorio e ingrese un comando como este
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
Keytool le solicita que proporcione contraseñas para el almacén de claves, su nombre, empresa, etc. tenga en cuenta que en el último aviso debe ingresar sí.
Luego, genera el almacén de claves como un archivo llamado my-release-key.keystore en el directorio en el que se encuentra. El almacén de claves y la clave están protegidos por las contraseñas que ingresó. El almacén de claves contiene una sola clave, válida por 10000 días. El alias es un nombre que usted usará más adelante para referirse a este almacén de claves al firmar su aplicación.
Para obtener más información sobre Keytool, consulte la documentación en: http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html
y para obtener más información sobre cómo firmar aplicaciones de Android, vaya aquí: http://developer.android.com/tools/publishing/app-signing.html