在我的模拟器中,当我尝试以编程方式升级我的apk时。我得到了:
Android App Not Install.
An existing package by the same name with a conflicting signature is already installed
我仍然处于这次升级的测试阶段,所以我下载的文件是以前版本的签名apk,我认为它应该可以没有任何问题。
根据an existing package by the same name with a confilcting signature is already installed中的建议,我尝试在调试模式和正常模式下运行模拟器...两种方法都不起作用。
你觉得我错过了什么吗?
发布于 2013-11-14 01:18:09
问题在于用于签署APK的密钥,默认情况下,如果您直接从IDE运行并打开Emulator,则Emulator中安装的APK将使用您的调试密钥(通常安装在~/.android/debug.keystore中)进行签名,因此,如果以前的APK使用与您当前使用的密钥不同的密钥进行签名,您将始终获得签名冲突,为了解决此问题,请确保您使用完全相同的密钥对两个APK进行签名,即使以前的APK是使用来自另一个SDK的调试密钥进行签名的,密钥也肯定会不同。
此外,如果你不知道之前使用了什么密钥来签署apk,但你想要安装新版本的应用程序,你可以只卸载以前的应用程序,然后重新安装新的应用程序。
希望这能帮到你。
致以问候!
发布于 2013-11-20 07:04:20
我收到了相同的错误消息,但这些答案没有帮助。在4.3nexus7上,我使用的用户不是所有者。我已经卸载了旧版本,但我一直收到相同的信息。
解决方案:我必须以所有者身份登录,进入“设置”“->应用程序”,然后刷到“全部”选项卡。向下滚动到列表的最末尾,其中列出了旧版本,并标记为“未安装”。选择它并按下右上角的'settings‘按钮,最后'uninstall for all users’
发布于 2016-02-05 00:34:44
如果使用的是debug apk,则用于对其进行签名的密钥在
C:\Users\<user>\.android\debug.keystore
如果您使用相同密钥,则在安装时应该不会发生冲突。
https://stackoverflow.com/questions/19959890
复制相似问题