应用安装被Play Protect阻止

157
当尝试安装已签名的应用程序(app-release.apk)时,会显示“Play Protect阻止了此应用”的警报,并且该应用程序无法安装。但是,未签名的应用程序(app-debug.apk)可以无问题地安装。
错误信息:

Play Protect不认识此应用程序的开发者。来自未知开发者的应用程序有时可能不安全。

为什么会出现这个错误?解决方案是什么?

image of Error


4
我也曾遇到这样的问题。当我试图发布我的应用程序时,我的Google帐户被暂停了。我意识到Google更新了Play Protect检查清单,其中包含已被暂停的包名,如果您尝试安装相同的包名,则Play Protect会开始发出虚假警告。我创建了一个只有主要活动而没有其他代码的使用已被暂停的包名的新应用程序。我使用已被暂停的apk签名密钥库进行签名并尝试安装。令人惊讶的是,Play Protect显示了有害警报,正如您所提出的问题一样。我还尝试制作了一个包含所有已被暂停的应用程序类的新包,但Play没有发出任何警报。 - Panache
请在此处查看解决方案:https://dev59.com/M63la4cB1Zd3GeqPPqHP#54976730 - Manohar Reddy Poreddy
我也遇到了同样的问题,但是我找到了另一个Keystore,即使没有将应用程序发布到Google Play,也可以正确签署应用程序,并且此对话框不会出现!即使您创建一个新应用程序,该问题也会立即出现。我有多个应用程序,其他Keystore与我的新应用程序一起正常工作!我不知道Google如何决定未知的应用程序开发人员!我从未拥有过Google Play控制台帐户。 - Hamed Hosseini
你找到问题的根本原因了吗? - ThinkAndCode
16个回答

1
解决方案在生成已签名的apk时创建一个新密钥。这对我很有效,没有任何麻烦。
1. 点击Build 2. 点击生成已签名的Bundle / APK... 3. 选择Bundle / APK(在我的情况下是APK),然后点击下一步 4. 点击创建新的(确保您在计算机上有密钥库路径) 5. 完成所有步骤后,点击完成以生成已签名的apk
安装时不会出现警告。

1

0
如果硬件有更改,请尝试重新下载或重新创建jks文件。
我也遇到了这样的问题,这是在将我的SSD从一台电脑移动到另一台电脑后发生的。这表明没有必要将应用程序发送到Google进行验证:旧的apk文件可以安装而不会出现警告。因此,我用云端上的android.jks替换了硬盘上的文件,创建了一个签名的apk文件,问题就解决了。

0

如果您尝试从.apk文件安装应用程序,则通常会出现此错误。您可以做的第一件事是从手机中的Play Store应用程序中禁用Play Protect:

打开Google Play商店应用程序--> Play Protect --> 点击顶部的设置图标 --> 禁用扫描应用程序以进行安全性检查

注意:建议您在完成安装后再次启用它以确保安全。

现在,在此之后,您应该能够安装该应用程序。如果您仍然收到错误消息,例如单击.apk文件时出现“错误,未安装应用程序”,则表示您已经安装了该应用程序的版本。首先卸载该应用程序,然后您就可以毫无问题地从.apk文件安装该应用程序。


-1

更新:以下方法不再适用。

这并非解决方案,但是您可以使用调试密钥来为签名发布版本,以避免被 Google Play Protect 阻止安装。看起来 Play Protect 不会对使用自动生成的 debug.keystore 签名的版本发出警告。

请注意,您的调试版本并非未经签名,而是使用了 调试 密钥签名。

当然,您不能将此版本用于生产分发(Google Play、Amazon 等),但对于需要高频反馈循环的预生产内部测试仍然很有价值。

您可以通过在 build.gradle 中添加配置来添加使用 debug.keystore 构建 release 的任务,类似如下:

android {
  buildTypes {
    // add after the `release` definition
    releaseDebugKey { initWith release }
  }

  signingConfigs {
    // use debug.keystore for releaseDebugKey builds
    releaseDebugKey { initWith debug }
  }
}

然后执行./gradlew assembleReleaseDebugKey来使用调试密钥构建发布版本。

-2

在将我的应用程序安装到真实设备进行调试后,我一直遇到这个问题。

enter image description here

问题在于我在清单文件的主活动中有android:exported="true"属性。我将其删除后,Play Protect警告消失了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接