我想使用相同的软件包名称更新我的应用程序,但不同的签名证书(顾问制作第一版,我没有他们的证书信息)。如果我取消发布然后上传新的apk,现有用户是否可以轻松更新,还是用户必须卸载并下载新的应用程序?
答案 0 :(得分:2)
这是不可能的。密钥库包含一个证书,用于对您的apk进行数字签名。每个证书都是完全唯一的,无法从旧版本中重新生成或恢复。
Google依赖于此,因为它非常安全,并且可以让他们真正减少有人破解您的开发者帐户详细信息并将恶意apk上传为现有应用的更新的机会。
现在,您必须使用不同的密钥在不同的软件包名称下重新上传应用程序,并以某种方式通知用户您已更改了应用程序详细信息。
当您取消发布该应用时,新用户将无法再看到它,但旧用户仍会安装该应用,并且可以在Google Play中看到它。
答案 1 :(得分:1)
他们必须下载新的应用程序。
只有拥有原始证书,才能让用户更新现有应用。
请参阅:Publishing Updates on Android Market
在上传更新的应用程序之前,请确保您拥有 增加了android:versionCode和android:versionName属性 在清单文件的元素中。此外,包名必须是 相同和 .apk必须使用相同的私钥进行签名。如果 包名称和签名证书与那些不匹配 现有版本,Market会认为它是一个新的应用程序,并将 不作为更新提供给用户。
另见this帖子:
答案 2 :(得分:0)
没有。 Play商店要求更新的应用程序具有相同的包名称和相同的证书。
如果您需要创建新证书,则必须将其作为具有不同包名称的新证书发布,并将此版本上载到市场。
然后,您必须告诉现有用户,为了获得更新,他们应该从Play商店下载新版本,并从设备中删除现有应用。