【问题标题】:APK installation failed: [INSTALL_FAILED_VERIFICATION_FAILURE]APK 安装失败:[INSTALL_FAILED_VERIFICATION_FAILURE]
【发布时间】:2013-02-21 23:58:59
【问题描述】:

我正在尝试在运行 Jelly Bean (4.2) 的 AOSP 版本的设备上安装 APK。

当我“adb install my.apk”时,出现错误:

[INSTALL_FAILED_VERIFICATION_FAILURE]

我尝试使用“testsign.jar”来“签署”apk,但它不会改变结果

【问题讨论】:

  • 设置->安全下是否启用了“允许未签名的应用程序”?
  • 该设置不存在,但“未知来源”复选框已选中...

标签: android apk


【解决方案1】:

您需要在 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 上,您可以在此处看到这些设置位于全局数据库中:

http://androidxref.com/4.4.2_r2/xref/frameworks/base/core/java/android/provider/Settings.java#5015

【讨论】:

  • 这很有帮助,但缺少我需要输入该命令的确切位置。感谢this answer 我找到了缺失的步骤。
  • 你能解释一下这里的“验证APK”是什么意思吗?是签名验证吗?我的应用似乎有一个(而且我认为没有任何没有任何签名的 apk)
  • “验证”也需要网络,所以如果你开启了飞行模式,也会失败。
【解决方案2】:

转到开发者设置并通过 USB 禁用验证应用程序。然后你就可以毫无问题地安装.apk了。

【讨论】:

    【解决方案3】:

    在您的手机中,转到:

    设置/DeveloperOption/通过 USB 验证应用程序

    并禁用它。

    【讨论】:

    • 这个答案与this one有何不同?
    【解决方案4】:

    这有什么用,我试图在 android 6.0 的设备上安装

    1. Settings > Developer Options > Then Turn off Verify Apps over USB见第一张图片

    然后

    1. Settings > Security > Then Turn on Unknown sources

    终于

    1. 不要忘记卸载您的应用并重新开始。

    转到Settings > Developer Options > Then Turn off Verify Apps over

    Settings > Security > Then Turn on Unknown sources

    【讨论】:

    • 为我工作。只有第1步是不够的,还需要第2步。这是正确的答案。
    【解决方案5】:

    更新答案:最近一次 Android 更新,现在由于 Play Protect,在安装 APK 过程中可能会显示以下错误:

    Failed to finalize session : INSTALL_FAILED_VERIFICATION_FAILURE
    Session 'app': Error Installing APKs
    

    为了解决此问题(出于开发者目的),您可以禁用 Play Protect,如下所示:installation app blocked by play protect

    【讨论】:

    • 禁用 Play Protect 解决了我的问题!
    • 我试图在 Genymotion 上运行应用程序。关闭 Play Protect 解决了这个问题。谢谢!
    【解决方案6】:

    实际问题是 Google play 屏蔽了您的应用! 你需要关闭它

    1. 去游戏商店
    2. 打开抽屉并选择 Play Protect
    3. 打开设置并关闭使用播放保护扫描应用和改进有害应用检测
    4. 现在轮到你了。重建您的应用程序并启动它!祝你好运!

    【讨论】:

    • 谢谢!你拯救了我的一天。
    【解决方案7】:

    您必须允许未签名的应用程序。安装被 Android 阻止。允许在“设置”中安装非市场应用。

    【讨论】:

    • 这个设置在哪里?有一个“验证应用程序”复选框,但未选中。 i.imgur.com/AX20lnG.png
    • 它也是灰色的...不知道这是什么意思
    • 您是否使用 USB 连接?是否启用 USB 调试?
    • 应用程序是否已经安装?当他们以不同的方式签名时,它将显示这一点。
    • +1 为所有伟大的建议。这是我的:你确定无论你想安装它都有足够的空间吗?
    【解决方案8】:

    除了“settings put global verifier_verify_adb_installs 0”之外,我还需要将 package_verifier_enable 设置为 0 以使其工作。

    例如

    adb shell
    
    settings put global package_verifier_enable 0
    

    【讨论】:

      【解决方案9】:

      以上建议均不适合我,但恢复出厂设置就可以解决问题。

      【讨论】:

        【解决方案10】:

        删除所有目录 -> {.gradle, .idea, app/build } 并再次安装为我工作

        【讨论】:

          【解决方案11】:

          正如有人所说,您需要有一个签名的apk才能运行它。为了有一个签名的apk,请右键单击您的项目>Android工具>导出签名的应用程序包。然后会提示您找到您的密钥库,但如果你没有,你可以创建一个。按照 eclipse 的指导进行下一步。

          【讨论】:

            【解决方案12】:

            您无需任何说明即可执行此操作 像这样: 转到设备上的设置,然后转到开发人员设置并禁用通过 USB 确认应用程序的选项。 (用谷歌翻译翻译)

            【讨论】:

              【解决方案13】:

              在我的 PC 上重新安装操作系统后,我在 Android Studio 中发生了这种情况 - 我试图在平板电脑上测试构建。最终对我有用的只是卸载平板电脑上的应用程序(由以前的安装构建)。

              【讨论】:

                【解决方案14】:

                在开发者设置中开启应用调试解决了我的问题

                【讨论】:

                  猜你喜欢
                  • 2017-07-31
                  • 2017-07-31
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2018-01-29
                  • 2016-09-28
                  • 2019-08-11
                  相关资源
                  最近更新 更多