6

我已经创建了一个密钥库,签署了 apk 并将其发布到了 Play 商店。

现在我已经修复了一些错误,使用相同的密钥库和密码,然后在导出 android 应用程序向导中单击下一步。

它向我显示了一个别名的下拉框,上面没有别名。但是昨天同样的东西对我有用,可以签署同一个项目,现在它看起来是空的。

我也在命令行上尝试过,但它说“密钥库被篡改或密码不正确”,但我非常确定密码 id 是正确的,密钥库也是如此。

这对我来说是一个表演终结者。请帮忙!

4

6 回答 6

8

首先,您应该检查您是否真的输入了正确的密码。如果在 Eclipse 中进行签名导出时键入了错误的密钥库密码,则 Eclipse 中的别名下拉列表将为空(并且不可编辑)。该对话框还将在顶部显示消息“密钥库被篡改,或密码不正确”,而不是消息“输入密钥密码”。

如果您绝对确定您拥有正确的密码并使用正确的密钥库,那么我能想到的唯一其他解释是密钥库出了问题。也许您将它保存为 ASCII 在您的 CVS/SVN 中?

于 2012-11-19T09:41:40.743 回答
2

我遇到了同样的问题,经过长时间的搜索,我设法解决了它。

是什么导致了错误?

该错误发生在

  1. 您输入了错误的密钥库密码
  2. 您的密钥库由于某种原因已损坏

我的案例场景

就我而言,我使用了正确的密码,这意味着我的密钥库已损坏。

自从我重命名我的应用程序后一切正常,并且我更改了密钥库和 apk 的位置。然后我对密钥库和 apk 的位置感到困惑,在这种混乱中,我可能已经用损坏密钥库的新 apk 替换了密钥库,但我不能 100% 确定。

我是如何解决的

修复很简单。对于win7:找到损坏的“原始”密钥库,右键单击它,选择属性,以前的版本,当密钥库正常时选择一个较早的版本,然后单击恢复

当您单击以前的版本时,您必须给它一些时间(我的花了大约 30 秒)。如果仍然没有任何反应,那么您尝试恢复的密钥库可能不是“原始”,它可能是副本或其他东西。

(我说“原始”是因为我尝试了其他方法来修复此错误并且我必须制作密钥库的副本,因此请确保使用原始损坏的密钥库

如果仍然没有发生

如果您执行了上述操作,但 Eclipse 仍然没有显示别名,那么您可能已经像我一样更改了密钥库的目录。

如果您更改了您的密钥库目录,您应该执行上述所有操作,然后将其放在之前工作的目录中,否则 eclipse 将无法找到别名!

要查看您的密钥库是否在不使用 Eclipse 的情况下工作,您可以使用 KeyTool。

  1. 找到 keytool.exe 所在的 Java JRE bin 文件夹(我的是 C:\Program Files\Java\jre1.8.0_25\bin)
  2. 在那里复制您的密钥库(以简化操作)
  3. 打开命令行并运行这些命令

cd C:\Program Files\Java\jre1.8.0_25\bin

keytool -list -keystore "你的密钥库名称"

然后你应该被要求输入密钥库密码,如果没有,密钥库仍然损坏,这意味着恢复不起作用。

请记住,每次发布应用程序时都要制作工作密钥库的副本,并且您知道密钥库工作正常。

于 2014-11-15T13:32:21.953 回答
1

我认为您输入了错误的密码...请确保密码正确...否则别名不会显示在下拉列表中...

或者

可能是您的密钥库位置已更改...

于 2012-11-19T09:48:26.980 回答
0

如果你记得名字,试着把它作为一个新的来介绍,它会强制刷新。

于 2012-09-21T10:59:39.570 回答
0

遇到同样的问题,我的情况是我第一次输入错误的密码,所以它没有填充别名列表。

如果您记得密码,只需清理所有项目 -> 构建并从头开始。它工作并成功上传到谷歌播放。

于 2014-10-17T14:42:39.553 回答
0

抱歉,但我遇到了同样的问题,并意识到我所缺少的只是将密钥存储在另一个文件夹中时放置的位置。当我尝试更新 APK 时,它没有显示密钥别名,因为我试图从中读取它的文件夹中没有密钥。所以我意识到我已经将它保存在另一个文件夹中。一旦我重新定位了正确的文件夹,密钥别名就会出现,并且从那里一切都很好。

于 2015-12-12T02:59:13.140 回答