2014-01-14 87 views
0

我在一个月前发布了一个应用,现在我需要更新它,但我也正在制作该应用的免费版本。所以我昨天完成了它,但我错误地用付费apk的密钥签名。所以现在我试图签署需要更新的原始apk,但是当我尝试安装时,它说"Application cannot be installed because a application with same certificate is conflicting..."应用证书发行Android

如果我上传该apk会导致任何问题?

回答

3

是的,如果你将上传新的APK,就会造成问题,用户将无法安装,原因是应用程序的一个关键需要使用相同的密钥在未来签署建立

见从developer.android.com

以下报价如您发布更新到您的应用程序,你必须继续签署 更新使用同一证书或证书集合,如果你 希望用户能够无缝地升级到新版。当 系统正在为应用程序安装更新时,它会将新版本中的 证书与现有版本中的 证书进行比较。 如果证书完全匹配,包括证书数据 和订单,则系统允许更新。如果您在不使用匹配证书的情况下签署新版本 ,则还必须为应用程序分配 不同的软件包名称 - 在这种情况下,用户 将新版本安装为全新的应用程序。

在Android的开发技术在这里阅读更多Signing Strategies

+0

这是我的问题 – user3148503

+0

像我开发了一个应用程序,它的发布确定和支付..和一段时间后,我公司开发的免费版本,因此误我与以前的one.And的密钥签名,现在我需要更新付费版本,所以如果我签署它会导致任何问题。免费版尚未发布 – user3148503

+0

这很简单1.使用每个应用程序的1个证书 2.如果您发布的是不同的apk,请为这两者使用不同的软件包名称。 –

0

你需要之后,要改变包名和更新版本的名称和版本代码在android系统mainfest文件再次创造新的签名密钥,没有必要用旧钥匙签到 。

如果您使用旧钥匙进行上传并在市场上上传该apk,那么您无法在市场上上传应用程序,因为它会冲突包名称。 因此,删除所有需要生成新密钥的问题,同时还要更改软件包名称,版本名称和版本代码。

希望这会帮助你。