我试图通过编辑androidmanifest.xml文件来改变我的默认/main/startup(不管你叫它什么)活动。我所做的只是改变了android:name属性。然而,这完全破坏了整个应用程序。当我试图安装它失败和读取。
安装错误:INSTALL_PARSE_FAILED_NO_CERTIFICATES
当我试图把它改变回以前的状态时,它仍然给我同样的错误…我做了什么?
我试图通过编辑androidmanifest.xml文件来改变我的默认/main/startup(不管你叫它什么)活动。我所做的只是改变了android:name属性。然而,这完全破坏了整个应用程序。当我试图安装它失败和读取。
安装错误:INSTALL_PARSE_FAILED_NO_CERTIFICATES
当我试图把它改变回以前的状态时,它仍然给我同样的错误…我做了什么?
当前回答
如果你正在使用Azure构建管道,并且你正在使用Android签名任务来签署你的APK,请确保使用版本3+来签署你的应用程序。这启用了Android 11+所需的v2方案Android签名。
其他回答
你直接在。apk文件中编辑AndroidManifest.xml了吗?如果是这样,那就行不通了。
每个Android .apk如果要安装在手机上,即使你没有通过市场安装,也需要签名。开发工具通过签署开发证书来解决这个问题,但.apk仍然是签名的。
这样做的一个用途是,设备可以判断.apk是否是已安装应用程序的有效升级,因为如果是的话,证书将是相同的。
因此,如果你对你的应用程序做了任何更改,你需要重新构建.apk,以便正确签名。
如果你试图包含一个包含AndroidManifest.xml文件的.jar库,就会发生这种情况。
如果它是纯Java,请确保不将其包含在.jar导出中 如果它不是纯Java(意味着它是一个Android项目),那么你必须把它作为一个库项目
最近我在升级到Android Studio 4.0时遇到了这个错误。原因是该项目在build.gradle中的签名配置中禁用了V2签名。
解决方案是删除v2SigningEnabled false或显式地将其设置为true,这是默认值。
android {
signingConfigs {
dev {
v2SigningEnabled true
}
}
}
大多数答案都是正确的。另一个原因是
►你的min SDK比设备SDK小。 ►您的设备中有具有相同包名的旧应用程序
如果你正在使用Azure构建管道,并且你正在使用Android签名任务来签署你的APK,请确保使用版本3+来签署你的应用程序。这启用了Android 11+所需的v2方案Android签名。