2010-12-08 129 views
18

有谁知道如何(以及如果)您可以更改用于签署android构建密码?更改android签名密钥密码

我们有一个实时应用程序,但想更改签名密码。问题是我们不想强制我们的用户重新安装应用程序(如果我们使用新的关键用户将无法将新版本安装为原始应用程序的更新)。

我查看了所有的android文档,但一直无法找到任何与主题相关的内容(除了制作新的密钥...)。

回答

22

其实,这是可能的:

keytool -storepasswd -keystore my.keystore 
4

这是不可能的。这是将您标识为原作者而不是冒名顶替者的签名密钥。 “我如何恢复丢失的密钥”问题经常出现,唯一的答案是重新开始一个新的应用程序。

如果你仍然有原始的签名密钥,你可以发布一个更新到你的应用程序,它导出你的程序使用的用户数据,然后在一个可导入它的新密钥下发布一个新的应用程序, d能够保存他们的数据。旧密钥下的迁移更新甚至可以使用意向将用户发送到新应用程序的市场下载页面。

+0

我很害怕这样的事情......好吧,我想我们只需要做那样的事情。感谢您的回答,以及您如何解决问题的想法。 – 2010-12-09 15:14:18

+3

@Chris我不同意。私钥存储在一个名为“KeyStore”的加密文件中,并且每个用于签名APK的密码实际上不是私钥的密码:它只是可以解密此KeyStore文件的密码,以便您可以访问您的私钥。如果您知道此密码,您可以轻松访问您的私钥,并使用您的KeyStore的新密码保护它(请参阅基于keytool的其他答案)。并且更改密码不会使其成为新密钥。所以应用程序很好,应用程序用户也是如此。 – xav 2015-03-30 19:22:38

15

您可以更改密码key,如果你有旧密码。你需要运行的是以下命令:

keytool -keypasswd -alias "key_alias" -keypass "old_pass" -new "new_pass" -keystore "your_keystore_path"