我正在尝试在运行 Jelly Bean (4.2) 的 AOSP 构建的设备上安装 APK。
当我“adb install my.apk”时,出现错误:
[INSTALL_FAILED_VERIFICATION_FAILURE]
我试过使用“testsign.jar”来“签名”apk,但它不会改变结果
您需要在 ADB 安装期间禁用 APK 验证。如果安全性中的设置显示为灰色或无法正常工作,则应尝试对设备进行炮击,并且根据您的 API 级别(全局、系统、安全)运行的设置数据库中的设置
$ adb shell settings put global verifier_verify_adb_installs 0
如果您可以实际设置它,它将阻止通过 ADB 检查 APK。
有时您还需要使用以下方法禁用包验证器:
$ adb shell settings put global package_verifier_enable 0
在 KitKat 上,您可以在此处看到这些设置位于 Global 数据库中:
http://androidxref.com/4.4.2_r2/xref/frameworks/base/core/java/android/provider/Settings.java#5015
转到开发人员设置并禁用通过 USB验证应用程序。然后你就可以毫无问题地安装.apk 了。
在您的手机中,转到:
设置/开发者选项/通过 USB 验证应用程序
并禁用它。
这是有用的,我试图在带有 android 6.0 的设备上安装
Settings > Developer Options > Then Turn off Verify Apps over USB
查看第一张图片然后
Settings > Security > Then Turn on Unknown sources
最后
必须Settings > Developer Options > Then Turn off Verify Apps over
Settings > Security > Then Turn on Unknown sources
更新答案:在最近的 Android 更新中,由于Play Protect的原因,现在在安装 APK 期间可能会显示以下错误:
Failed to finalize session : INSTALL_FAILED_VERIFICATION_FAILURE
Session 'app': Error Installing APKs
为了解决这个问题(出于开发者的目的),您可以禁用 Play Protect,如下所示:安装应用程序被 Play Protect 阻止。
实际问题是 Google play 阻止了您的应用!你需要关闭它
您必须允许未签名的应用程序。安装被 Android 阻止。在设置中允许安装非市场应用。
上面的建议都不适合我,但是工厂重置设备就可以了。
除了“settings put global verifier_verify_adb_installs 0”之外,我还需要将 package_verifier_enable 设置为 0 以使其工作。
例如
adb shell
settings put global package_verifier_enable 0
删除所有目录->{.gradle, .idea, app/build }
并再次安装为我工作
就像有人说的那样,你需要一个签名的apk才能运行它。为了有一个签名的apk,右键单击你的项目>Android工具>导出签名的应用程序包。然后会提示你找到你的密钥库,但是如果你没有,您可以创建一个。按照 eclipse 的指导执行后续步骤。
您可以在没有任何类似说明的情况下执行此操作:转到设备上的设置,然后进行开发人员设置并禁用通过 USB 确认应用程序的选项。(用谷歌翻译翻译)
在我的 PC 上重新安装操作系统后,我在 Android Studio 中发生了这种情况——我试图在平板电脑上测试构建。最终对我有用的只是卸载平板电脑上的应用程序(由以前的安装构建)。
在开发人员设置中打开应用程序调试解决了我的问题