【问题标题】:Change signing key, keep packagename更改签名密钥,保留包名
【发布时间】:2012-09-28 14:48:17
【问题描述】:

我似乎找不到答案:是否可以更改签名密钥但仍使用相同的包名?这样购买我的应用的人就可以使用新密钥从同一个 Google Play 页面“重新下载”该应用。

这样做的背景是我想将我的签名密钥延长到我现在设定的 25 年以上。也许这已经足够了,但我不想被置于密钥过期的情况。

如果无法做到这一点,我可以删除我当前的 Google Play 应用并创建一个具有相同包名和另一个密钥的新应用吗?

【问题讨论】:

    标签: android certificate google-play signing


    【解决方案1】:

    没有。如果您在设备上安装了带有签名并包含包名的 APK,则任何后续具有相同包名的 apk 都必须具有相同的签名。

    【讨论】:

    • 是的,在 google publish 上找到了这个:请注意,应用文件的包名是唯一且永久的,所以请明智地选择。包名称以后不能删除或重复使用。请记住,如果您丢失了密钥库,则必须使用新的包名称和新密钥发布应用程序。您还应该更新原始应用的描述并取消发布它。
    • 这里说我们可以在应用程序的生命周期内更改一次签名密钥:support.google.com/googleplay/android-developer/answer/7384423您的答案需要更新吗?
    • @Saleh 没有。 “您的新密钥用于签署新的安装和应用更新。您的旧应用签名密钥仍用于为在密钥升级之前安装您的应用的用户签署更新。”如果您想在已安装应用程序的设备上更新应用程序,您仍然需要原始密钥来签署 apk
    • Android 9+ 支持此主题的密钥轮换。 link。但是 Google Play 不允许密钥轮换。 Google play 允许新安装新密钥,而不是密钥轮换,但您必须同意让 Google 为您的应用签名。
    【解决方案2】:

    截至 2019 年

    是的,在某些情况下您可以这样做。

    如果您启用了Manage Signing Key by Google,那么您的签名密钥将由 Google 管理,您可以添加一个额外的 Upload Key,如有必要,您可以更改/更新。 Google 推荐此过程,此过程适用于新应用和已发布的应用。

    如果您自己管理签名密钥,您仍然可以在应用的整个生命周期内只升级一次签名密钥。拥有旧密钥的用户将能够使用旧签名密钥来使用和更新应用程序,而新用户将能够使用升级后的密钥。以下是参考文献中引用的内容:

    在某些情况下,您可以申请应用签名密钥升级。您的新密钥用于签署新的安装和应用更新。您的旧应用签名密钥仍用于为在密钥升级之前安装您的应用的用户签署更新。

    每个应用在其生命周期内只能升级一次其应用签名密钥。万一您有多个应用使用相同的签名密钥专门在同一进程中运行,您将无法对这些应用使用密钥升级。

    详细说明here

    【讨论】:

    • 我不明白关于旧密钥的部分,这是否意味着他们无法使用新密钥进行更新?
    • @Keivan.k 正是 keivan。已经拥有该应用程序的用户将使用旧密钥进行更新,而在更改密钥后安装该应用程序的用户将使用新密钥进行更新。这由 Play 商店管理。
    • @FereshtehNaji 感谢您的回复。我意识到你在 BadeSaba 工作,有没有我可以给你发电子邮件之类的?我在通知方面遇到了一个大问题,如果您能帮助我解决这个问题,我将不胜感激。 stackoverflow.com/questions/63501496/…这是我的问题的链接。
    猜你喜欢
    • 2015-05-19
    • 2013-03-24
    • 2022-11-25
    • 2021-06-29
    • 1970-01-01
    • 2019-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多