aplicación de instalación bloqueada por play protect

117

Al intentar 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?

imagen de error

Mostafa Azadi
fuente
2
También enfrenté el mismo problema con mi aplicación. Aunque mi cuenta de Google se suspendió cuando intenté publicar mi aplicación. Me doy cuenta de que la lista de verificación de Google Update Play Protege con el nombre del paquete suspendido y luego, si intentas instalar el mismo nombre de paquete, Play Protege comienza a dar una advertencia falsa. Creé una nueva aplicación con el nombre del paquete suspendido y solo la actividad principal y ningún otro código agregado. Firmado con el almacén de claves de apk suspendido e intentado instalar. Sorprendentemente, play protect mostró una alerta dañina como se muestra en su pregunta. También intenté hacer un nuevo paquete con todas las clases de aplicaciones suspendidas pero sin alerta por juego.
Panache
Vea la solución aquí: stackoverflow.com/a/54976730/984471
Manohar Reddy Poreddy
el mismo problema para mí, pero encontré otro Keystore que ni siquiera publicó la aplicación en Google Play, firmó la aplicación correctamente y este cuadro de diálogo no aparece. incluso si crea una nueva aplicación tiene el problema de fábrica. ¡Tengo varias aplicaciones y otras Keystore funcionan correctamente con mi nueva aplicación! ¡No sé cómo decidir en Google el desarrollador de aplicaciones desconocidas! Nunca tengo una cuenta de consola de Google Play.
hamed hosiny

Respuestas:

61

Encontré la solución: vaya al enlace de abajo y envíe su solicitud.

Formulario de envío de apelaciones de Play Protect

Después de unos días, el problema se solucionará.

Mostafa Azadi
fuente
3
@MostafaAzadi ¿Cuál fue la razón exacta?
Behnam Maboudi
3
si no está utilizando SSL y habilitó las comunicaciones de texto sin formato en el manifiesto, esa es la razón.
DaniloDeQueiroz
1
Si tiene un problema con la URL para descargar su archivo APK, esto es útil: stackoverflow.com/a/56513945/9710197
Mostafa Azadi
@DaniloDeQueiroz ¿Está absolutamente seguro de que el problema se debe a las comunicaciones en texto claro? Entonces, eliminar android:usesCleartextTraffic="true"debería resolver el problema, ¿verdad? Gracias.
AnthoPak
1
Hola. No puedo enviar mi aplicación para solicitar la protección de Play. ¿Cómo subir la apk? Recibo un correo electrónico que dice que el apk no se puede descargar, aunque estoy proporcionando enlaces de descarga directa a través de GitHub.
SayantanRC
40

Encontré la mejor solución. Si quieres conquistar este problema debe abrir su tienda de juego, en el menú encontrará Juego Proteger aquí y aquí y desactive el dispositivo de escaneo de amenazas a la seguridad .

molood ayat
fuente
78
Ésta no es la solución. Cuando tenemos que distribuir una aplicación al cliente o al usuario (sin Play Store), no podemos usar esto
silwar
1
Gracias, funcionó bien para mí para una solución rápida y única para una aplicación de carga lateral.
Günter Zöchbauer
1
@silwar no creo que exista un problema en dispositivos sin Play Store. Porque el bloqueador es Play Store.
Jemshit Iskenderov
@JemshitIskenderov En mi caso, fue un problema de almacén de claves corrupto ... Lo cambié para mi aplicación (la aplicación empresarial no está publicada en Play Store) y el problema se solucionó
silwar
1
En mi caso, el problema fue usar Google Game Services para aplicaciones no publicadas.
Sattar Hummatli
18

Intente crear un nuevo almacén de claves y reemplácelo con uno anterior, luego reconstruya un nuevo APK firmado.

Actualización: tenga en cuenta que si está utilizando una conexión http con el servidor, debe utilizar SSL.

Eche un vistazo a: https://developer.android.com/distribute/best-practices/develop/understand-play-policies

Amirhosein Heydari
fuente
2
Tal vez se deba a que la validez máxima de la mayoría de los certificados comprados ronda los últimos años. Establezca una fecha de vencimiento superior a 50 años.
Amirhosein Heydari
1
Creé esta aplicación este mes y establecí la validez (años) de la firma 25 años
Mostafa Azadi
1
@MostafaAzadi, Amirhosein Tengo el mismo problema aquí. has encontrado algo?
Behnam Maboudi
17
Sí, parece ridículo. Lo peor es que solo aparece esta ventana emergente la primera vez que instalo la aplicación. Incluso si lo acepto y lo instalo, en la próxima instalación se registra "Instalación bloqueada silenciosamente" y aparece un mensaje de "Aplicación no instalada" en la interfaz de usuario. En ese momento, solo deshabilitar Play Protect por completo o borrar los datos de Play Store de la configuración me devuelve la ventana emergente. Esto está sucediendo con una clave que hemos generado con el mismo script que docenas de nuestras otras aplicaciones que están en Play Store y funcionan bien.
zsmb13
8
Khosham miad faghat ma irani ha b hamchin moshkelayi bar mikhorim
MoHammaD ReZa DehGhani
12

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.

Meisam Beiranvand
fuente
¿Hiciste estas cosas? porque tengo este problema y mis aplicaciones se han autenticado desde Irán y no puedo enviar la aplicación desde la apelación (no pueden probarla), entonces, ¿cómo puedo resolverlo? gracias amigo
Nima habibkhoda
4
¡No funcionó para mí! Uso keytool para crear un almacén de claves
Amir Shabani
11

Hay tres opciones para deshacerse de esta advertencia:

  1. Debe desactivar Play Protect en Play Store -> Play Protect -> Icono de configuración -> Analizar dispositivo en busca de amenazas de seguridad
  2. Publicar la aplicación en Google Play Store
  3. Envíe una apelación a Play Protect .
Ali
fuente
7

Estoy agregando esta respuesta para otros que aún están buscando una solución a este problema si no desea cargar su aplicación en Play Store, entonces temporalmente hay una solución para este problema.

Google proporciona una API de verificación de dispositivos de seguridad a la que debe llamar solo una vez en su aplicación y, después de eso, Play Protect no bloqueará su aplicación:

Aquí están los enlaces:

https://developer.android.com/training/safetynet/attestation#verify-attestation-response

Enlace para proyecto de código de muestra:

https://github.com/googlesamples/android-play-safetynet

Sr. Patel
fuente
1
@Ahmad, por supuesto, funciona, todos mis colegas están usando esta API para resolver el problema, hemos entregado más de 20 aplicaciones diferentes a los clientes hasta ahora y funciona perfectamente
Sr. Patel
2

la única solución que funcionó para mí fue usar java keytool y generar un archivo. keystorearchivar la línea de comando y luego usar eso.keystore archivo para firmar mi aplicación

puede encontrar la herramienta de claves de 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 mensaje 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 única clave, válida por 10000 días. El alias es un nombre que utilizará más adelante para hacer referencia 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 la firma de aplicaciones de Android, vaya aquí: http://developer.android.com/tools/publishing/app-signing.html

easazade
fuente
3
si hay un voto negativo, me gustaría saber por qué. si estoy haciendo algo mal, me gustaría saber
easazade
2

Si está utilizando algunos rastreadores como google analyticso amplitudey está intentando lanzar su aplicación en otra plataforma que no sea Google Play, estos errores aparecen para los usuarios. Entonces hay dos posibles soluciones:

  1. Use rastreadores especiales en su aplicación (firebase y appmetrica están probados y están bien)
  2. Lanza tu aplicación en Google Play
majran
fuente
0

la solución radica en crear una nueva clave al generar el apk firmado. esto funcionó para mí sin problemas.

  1. haga clic en Construir
  2. haga clic en generar paquete firmado / APK ...
  3. elija Bundle / APK (en mi caso APK) y haga clic en Siguiente
  4. haga clic en crear nuevo (asegúrese de tener una ruta de almacenamiento de claves en la máquina)
  5. después de todo, haga clic en finalizar para generar su apk firmado

cuando lo instale, la advertencia no llegará.

KD MBEDOBE
fuente
0

se debe a que el certificado de depuración caducó, simplemente elimine el debug.keystoreubicado en

C:\Users\.android\

Después de eso, construya su proyecto, las herramientas de construcción generarán una nueva clave y funcionará bien. aquí hay una referencia:

https://developer.android.com/studio/publish/app-signing
Jasbin Karki
fuente
-1

No es la solución, pero puede usar la clave de depuración para firmar versiones de lanzamiento para evitar bloquear la instalación de Google Play Protect. Parece que Play Protect no advierte sobre las compilaciones firmadas con generado automáticamente debug.keystore.

Tenga en cuenta que sus compilaciones de depuración no están sin firmar , solo están firmadas 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 aún así 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 assembleReleaseDebugKeypara construir una versión de lanzamiento con clave de depuración.

tnj
fuente