3

我正在开发 2 个 android 应用程序,它们是我的服务器的客户端。我无法在我的安卓手机上安装这两个应用程序。我在手机上安装了第一个应用程序,一切正常。然后,当我尝试在手机上安装第二个应用程序时,我收到该应用程序将替换另一个应用程序(第一个应用程序)的消息,然后我收到以下错误:

未安装应用程序:已安装具有冲突签名的同名现有软件包。

我提到我为每个应用程序创建了一个单独的密钥库文件,按照 android 官方签名应用程序指南中的方式导出它们,然后将它们压缩对齐。

所以操作系统认为它是一个单一的应用程序?但实际上有 2 个不同的应用程序。我究竟做错了什么?

4

4 回答 4

7

我认为您使用的是相同的软件包,这对于两个不同的应用程序是不允许的。

但是对于在先前安装的应用程序之上安装另一个版本时遇到相同错误的任何人:

当问题发生时,我想测试我的应用程序的发布版本。我之前使用 eclipse 安装了该应用程序,并且我想安装相同的应用程序但具有已发布的签名。我什至使用应用程序库卸载了该应用程序,但问题仍然存在。

我的解决方案是使用设置->应用程序->“应用程序”->右上角菜单->为所有用户卸载应用程序

于 2013-04-23T07:23:54.940 回答
2

我有同样的错误信息,但这些答案没有帮助。在 4.3 nexus 7 上,我使用的用户不是所有者。我已经卸载了旧版本,但我一直收到相同的消息。

解决方案:我必须以所有者身份登录并转到设置-> 应用程序... 向下滚动到列表末尾,其中列出了我的旧版本并带有“未安装”标记。选择它并按右上角的“设置”按钮,最后“为所有用户卸载”

于 2013-11-19T23:10:13.667 回答
1

不确定当您使用相同的签名密钥时会发生什么,因为老实说,我从未真正尝试过。

话虽如此,正如Anand Tiwari在他的评论中已经简化了答案,您不能在一台设备上安装两个具有相同包名称的不同应用程序。从逻辑上讲,它们可能对您有所不同,但对于操作系统而言,它们实际上是相同的。

当您尝试将应用程序上传到 Android Market (Google Play) 时,问题也会显现出来。Google Play 根本不会接受第二个申请。Warren Faith 在这里有一个简短的解释:https ://stackoverflow.com/a/5788664/450534

例如,具有一些更改的类似应用程序如何发布到 Google Play 商店:

  1. FriendCaster 的免费版本是:https ://play.google.com/store/apps/details?id=uk.co.senab.blueNotifyFree

  2. 如果同一个应用程序的付费版本是:https ://play.google.com/store/apps/details?id=uk.co.senab.blueNotify

注意包名的结尾。在这种情况下,您将能够在一台设备上同时安装这两个应用程序。

于 2012-11-06T13:13:18.453 回答
1

我认为您的问题是您的两个文件具有相同的包名称。您可以使用相似的包命名这两个应用程序,但它们不能相同。事实上,使用相同的包库可以用来在应用程序之间进行通信,即。App1:com.mypkg.app1 和 App2:com.mypkg.app2。但是,它们都不能称为 com.mypkg.app - 包名称是 Android 识别应用程序的方式,并且不能相同。

您应该能够使用相同的密钥签署尽可能多的不同应用程序(假设它们的包不同)。

确保不要丢失您的签名证书,如果丢失,您将无法上传具有相同包名的新应用程序。如果您丢失了签名证书,您将遇到大麻烦。

祝你好运。

于 2012-11-06T13:13:34.123 回答