首页 > 解决方案 > INSTALL_PARSE_FAILED_NO_CERTIFICATES:包 /data/app/vmdl2005941423.tmp/0_base-master 在 AndroidManifest.xml 条目中没有证书。

问题描述

环境:Windows 10 64 位,Android Studio 3.2 Canary 15。

我在一个测试项目中添加了免费付费的口味,然后构建了签名的 APK。

运行发布 APK 时出现以下错误 -

Installation failed with message Failed to finalize session : 
INSTALL_PARSE_FAILED_NO_CERTIFICATES: Package 
/data/app/vmdl2005941423.tmp/0_base-master has no certificates at entry 
AndroidManifest.xml.
It is possible that this issue is resolved by uninstalling an existing 
version of the apk if it is present, and then re-installing.

我尝试使用 V1 和 V2 签名版本重新签署我的 APK,但在运行发布版本时仍然出现相同的错误。

在分析了发布的 APK 之后,AndroidManifest.xml 以红色显示了 Manifest 标签的 xmlns:android:

    <manifest
    xmlns:android="http://schemas.android.com/apk/res/android"

当我悬停红色文字时,它显示“URI 未注册...”

我不知道这是什么意思...

这个错误的原因是什么?

标签: androidandroid-signing

解决方案


根据这里

构建 APK 集时,设置 --ks 和 --ks-key-alias 标志以确保 APK 已签名。只有签名的 APK 可以安装在设备上。Android SDK 应该带有一个调试密钥库。尝试查看 ~/.android/debug.keystore(别名:AndroidDebugKey,密码:android)。

换句话说,只有签名的 apk 可以安装到设备上。这是有道理的,因为 App Bundle 确实用于分发。


推荐阅读