Keytool签名问题:密钥库被篡改,或密码不正确

She*_*lam 15 java android google-maps keystore keytool

我正在尝试为Google Maps API签署我的Android应用程序的发布版本(调试已签名正常):

keytool -list -alias cancertrials -keystore /Users/syalam/Documents/workspace/Cancer_Trials/keys/release -storepass android -keypass cancertrials
Run Code Online (Sandbox Code Playgroud)

但我得到错误:

java.io.IOException: Keystore was tampered with, or password was incorrect
Run Code Online (Sandbox Code Playgroud)

我很肯定密码是正确的,因为当我尝试在Eclipse中导出我的应用程序时,它会询问密钥库和密码,并且我正确输入密码.

不知道为什么我不签这个?我需要在发布模式下显示Google地图(在调试模式下工作).

chu*_*ubs 24

当你刚刚做一个清单时,我认为你不必包括一个storepass.storepass加密在执行列表时未显示的私钥.试试这个:

keytool -list -keystore /Users/salam/Documents/yada/yada
Run Code Online (Sandbox Code Playgroud)

然后在出现提示时提供密钥库密码.如果可以,那么您可以尝试在命令行上使用keypass.

您可能还想检查并确保使用相同版本的Java.我认为这不是问题所在,但如果上述情况无法解决问题.


sha*_*vik 5

不知何故在Windows上,keytool不接受密码.我只需要SHA1密码就可以在google dev控制台上的项目上配置客户端ID.以下似乎对我有用

keytool --list --keystore android.jks --protected
Run Code Online (Sandbox Code Playgroud)

这打印了所有别名的SHA1键.