Android签名冲突

Android签名冲突,android,conflict,keystore,signing,Android,Conflict,Keystore,Signing,我正在开发两个android应用程序,它们是我服务器的客户端。我无法在android手机上同时安装这两个应用程序。我在手机上安装了第一个应用程序,一切正常。然后,当我尝试在手机上安装第二个应用程序时,我收到一条消息,该应用程序将替换另一个应用程序(第一个),然后我收到以下错误: 未安装应用程序:已安装具有冲突签名的同名现有包 我提到,我已经为每个应用程序创建了一个单独的密钥库文件,将它们导出到android官方签名应用程序指南中,然后对它们进行zipaling 所以操作系统认为它是一个单一的应用

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

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

我提到,我已经为每个应用程序创建了一个单独的密钥库文件,将它们导出到android官方签名应用程序指南中,然后对它们进行zipaling

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

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

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

当您尝试将应用程序上传到Android市场(Google Play)时,问题也会显现出来。Google Play将不接受第二个应用程序。沃伦·费思(Warren Faith)在这里给出了一个简短的解释:

例如,类似的应用程序经过一些修改后如何发布到Google Play商店:

  • FriendCaster的免费版本是:

  • 如果同一应用程序为:


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

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

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

    请确保不要丢失签名证书,如果丢失,您将无法上载具有相同软件包名称的新应用。如果您丢失了签名证书,您将有大麻烦


    祝你好运。

    我想你使用的是同一个软件包,两个不同的应用程序不允许使用这个软件包

    但对于在先前安装的应用程序上安装其他版本时出现相同错误的任何人:

    当问题发生时,我想测试我的应用程序的发布版本。我以前使用eclipse安装过这个应用程序,现在我想安装同一个应用程序,但已发布签名。我甚至使用apps gallery卸载了该应用程序,但问题依然存在


    我的解决方案是使用设置->应用->应用->右上角菜单->为所有用户卸载应用程序。我收到了相同的错误消息,但这些答案没有帮助。在4.3 Nexus7上,我使用的用户不是所有者。我已经卸载了旧版本,但我一直收到相同的消息


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

    不能在同一设备上安装具有相同软件包名称的两个应用。您是否使用同一部手机安装了您的应用程序?您是否正在尝试安装以开发它?如果你这么做了,那只是说安装版本上使用的密钥不同(调试密钥),如果不是,那么两个应用程序都使用相同的包名,android不允许这样做,因为这是它识别应用程序的方式,所以必须是唯一的。好的,我理解。但这对我来说很奇怪,我怎么知道我的应用程序包名称在整个市场上是独一无二的呢?或者我应该试着命名软件包,直到找到一个唯一的软件包为止?@andrey_groza:好吧,所有开发人员都会遵循自己的软件包命名约定,而您的软件包名称与其他人的软件包名称发生冲突的几率实际上非常小。事实上,我从来没有听说过这种情况。下面是命名约定的一个很好的解释:另外,如果包名冲突,GooglePlay也会通知您。这仍然让你有机会回去,更改名称,编译另一个APK并再次上传。没有造成伤害。;-)