前言

上一篇我们完成了keystore文件的生成,但是,这只是android项目导出的第一步。因为很可能我们前面只是关注了keystore文件的生成与否,没有太多留意keystore的一些参数,而在导出为apk时就需要用到一些比较关键的参数,如果用错,则会出现想下面类似的错误(别名用错),最终导致项目导出失败。

Error:Execution failed for task ':app:packageRelease'.
> Failed to read key mine from store "D:\Studying\Android\projects\MyApplication\android.keystore": Keystore was tampered with, or password was incorrect

所以,我们需要记住需要使用的keystore的一些常用参数,但之前我们只是去设法成功生成keystore文件,那么这些参数在哪可以看到或者修改成为我们容易记住的参数呢?下面简单说明一下相关的命令调用


查看keystore参数信息(以android.keystore文件为例)

在命令窗口中输入命令:keytool -list -v -keystore android.keystore

(根据上一篇讲的,此时我已经将签名证书复制到了当前项目文件下,所以命令路径即为临时文件android.keystore的路径)



修改keystore的密码,别名等


1:修改密码的命令:keytool -storepasswd -keystore android.keystore

其中,my.keystore是复制出来的签名证书文件,命令执行后会提示证书的当前密码和新密码及其确认。

2:修改别名alias的命令:keytool -changealias -keystore android.keystore -alias my_name -destalias androiddebugkey

这里,my_name是证书中当前的alias,-destalias指定的是要修改为的alias,例如我将别名改为如下:



3:修改alias密码的命令:keytool -keypasswd -keystore my.keystore -alias androiddebugkey

这一步执行后会提示输入keystore密码,alias密码,然后提示输入新的alias密码。


这三个指令时独立的,没有依赖关系,所以可以根据自己的需求来更改参数。


参考:http://blog.blundellapps.co.uk/tut-change-alias-passwords-of-your-android-keystore/#comment-2408