我试图通过编辑androidmanifest.xml文件来改变我的默认/main/startup(不管你叫它什么)活动。我所做的只是改变了android:name属性。然而,这完全破坏了整个应用程序。当我试图安装它失败和读取。

安装错误:INSTALL_PARSE_FAILED_NO_CERTIFICATES

当我试图把它改变回以前的状态时,它仍然给我同样的错误…我做了什么?


当前回答

对我来说,我忘记将新的签名配置添加到

项目结构->默认配置->签名配置

其他回答

确保构建变量在Android Studio中被设置为调试(而不是发布)(检查构建变量面板)。

如果你试图包含一个包含AndroidManifest.xml文件的.jar库,就会发生这种情况。

如果它是纯Java,请确保不将其包含在.jar导出中 如果它不是纯Java(意味着它是一个Android项目),那么你必须把它作为一个库项目

如果您添加了签名配置(创建签名密钥并添加到“项目结构”>“模块”>“签名配置”),但忘记在“项目结构”>“构建变量”>“构建类型”>“签名配置”中指出,则可能会抛出此错误。

签名配置字段不应该是空的!(见下图)否则,你会看到

"INSTALL_PARSE_FAILED_NO_CERTIFICATES...APK signature verification failed." 

如果尝试安装版本变体,则会出现错误。(或其他具有相同错误配置的变体)

这是一个丑陋但快速的解决方案:使用JDK 6而不是7。

在阅读了Chloe的回答后,我卸载了JDK 7(目前不需要它)并安装了JDK 6。这就解决了问题。一个更好的解决方案是让ant使用JDK 6(不卸载7)。也许可以改变/设置这个属性:

java .

在当地。属性文件。它在项目目录(根目录)中。

Android不支持JDK 7(只有6或5),所以让ant脚本也使用JDK 6或5可能是一个很好的解决方案。

导航到运行->编辑配置…—> Android App—> App—>安装选项

然后从应用程序包更改为APK而不是默认APK