INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES第一次安装应用程序
我正在尝试手动构build和签名应用程序,但在安装到模拟器之前,我一直在获取INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES
,之后我甚至成功安装了一次。
以防万一,我试图卸载应用程序(是的,我给了正确的Java包名称),但它并没有解决问题。
我也尝试重新启动模拟器并标记“擦除用户数据”checkbox。
软件包名称包括我们的公司名称,所以它不能与内部软件包冲突。
我没有在互联网上发现任何其他的解释,除了“你已经安装了相同的应用程序的另一个版本”,所以我有点卡在这里。
谢谢!
也许它没有正确签名? 尝试使用Eclipse或SDK Ant任务构build它,并比较APK。 或者使用jarsigner来检查签名,并确保它是你所期望的。
我也遇到了这个问题,原因是我已经安装了相同的应用程序,但使用不同的键(DEBUG键与释放键)签名。 手动删除旧的安装并重新安装解决了这一点。
这对我工作:
- 前往设置
- 然后select应用
- select下载的主题
- 为所有用户select应用程序并卸载 。
然后,一切都像一个魅力。
我已经在设备上的APK>删除它解决了我> TNX
我今天遇到了这个,看起来不止一次地导致了这个APK的签名行为。
当我使用标准的“ant debug”构build自动签名debugging密钥库时,然后将文件添加到APK中,并使用debugging密钥库将其退出,所有的步骤和validation都会给我预期的结果,但在安装新工厂 – 复位机我得到这个消息。
当我使用标准的“ant release”构build时,通过按Ctrl-C跳过密码请求,然后将文件添加到APK并使用我的私有密钥存储库进行注销,一切都按预期工作。
您可以使用标准方法来构build您的APK文件,但是在您辞职之前,您需要删除APK文件中的META-INF目录以取消签名。 在Linux / Mac上,您可以使用命令zip -d yourapp.apk“META-INF *”。
还有一件事:有些人已经报告了在alignment的APK文件上进行签名/签名操作的问题,所以如果你有select,你可能应该在未alignment的操作上进行操作,然后使用zipalign作为最后一步。
对于每个新版本,我们都在模拟器上运行testing。 因为我们希望从每个新的testing运行的已知configuration开始,每次删除旧的AVD后,我们都会创build一个新的AVD:
android delete avd -n $ {EMULATOR}
android创buildavd -n $ {EMULATOR} -t 26
即使在这个新创的AVD上,我们也看到:
失败[INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
当安装要testing的APK和JUnittestingAPK时。
似乎为我们工作的是运行:
adb卸载my.app.name
adb卸载my.app.name.test
在新创build的模拟器上,即使这会导致
失败
最终安装(生成后)显示:
[执行] 1174 KB / s(4430116字节3.683s)
[exec] pkg:/data/local/tmp/MainActivity-debug.apk
[执行]成功
对于正在testing的APK和testingAPK。
尝试删除设备上的应用程序,然后在冰上运行
这是唯一对我有用的东西:
$ adb uninstall com.example.testproj
希望能帮助到你
- 在manifest.xml中更改包名(例如,give = package =“com.first.rss”)
- 在src中更改名称
- 右键单击>重构>重命名…并给出一个名称。
如果其他人得到了这个失败,并且上述解决scheme都没有工作,请确保为您的应用程序禁用pipe理员权限(如果您有请求)。
从多台机器上处理应用程序时遇到同样的问题。 尽pipe从我的设备上卸载应用程序,问题仍然存在。 然而,我发现该软件包仍然安装在设备上的其他用户。
在您的设备上,进入设置>应用程序,然后点击包装。 然后点击菜单/选项button,然后select“为所有用户卸载”。
这应该允许应用程序再次安装在您的设备上。
我有这个问题试图对Genymotion执行gradle任务connectedDebugAndoidTest
(或connectedAndroidTest
)。 在普通模拟器上运行解决了这个问题。