在签署Android APK时eclipse中缺少关键别名

时间:2012-09-21 10:57:42

标签: android android-keystore

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

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

它显示了别名的下拉框,上面没有别名。但昨天同样的事情对我来说也是有用的,我签了同样的项目,现在看来是空的。

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

对我来说,这是一个节目。请帮忙!

6 个答案:

答案 0 :(得分:7)

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

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

答案 1 :(得分:2)

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

导致错误的原因是什么?

时发生错误
  1. 您键入了错误的密钥库密码
  2. 您的密钥库因某种原因已损坏
  3. 我的个案情景

    在我的情况下,我使用了正确的密码,这意味着我的密钥库已损坏。

    自从我重命名我的应用程序以来,一切正常,我改变了密钥库和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. 打开命令行并运行这些命令
    4. cd C:\ Program Files \ Java \ jre1.8.0_25 \ bin

      keytool -list -keystore“yourkeystorename”

      然后你应该被要求输入密钥库密码,否则密钥库仍然被破坏,这意味着恢复不起作用。

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

答案 2 :(得分:1)

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

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

答案 3 :(得分:0)

如果你记得这个名字,试着把它作为新名称引入,它会强制刷新。

答案 4 :(得分:0)

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

如果您还记得密码,只需清除所有项目 - >建立并从第一个继续。它工作并成功上传到谷歌播放。

答案 5 :(得分:0)

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