之前在測試Eclipse ADT的Custom debug keystore自定義調試證書的時候,發過一篇關於調試證書規格的博文:Eclipse ADT的Custom debug keystore所需證書規格,提到過自定義調試證書的密碼和alias命名以及alias密碼都是有規矩的。其實Android應用開發接入各種SDK時會發現,有很多SDK是需要靠package name和keystore的指紋hash來識別的(百度地圖SDK、Facebook SDK等等…),這樣如果使用默認自動生成的debug keystore的話就會給開發調試工作帶來一些麻煩。這時可以通過修改正式的release keystore,生成一份“遵守規矩”的臨時自定義調試證書給開發時用,就方便多了,具體方法如下:
1. 首先當然是先復制一份正式證書出來作為要修改為的臨時調試證書。
2. 修改keystore密碼的命令(keytool為JDK帶的命令行工具):
keytool -storepasswd -keystore my.keystore
其中,my.keystore是復制出來的證書文件,執行后會提示輸入證書的當前密碼,和新密碼以及重復新密碼確認。這一步需要將密碼改為android。
3. 修改keystore的alias:
keytool -changealias -keystore my.keystore -alias my_name -destalias androiddebugkey
這一步中,my_name是證書中當前的alias,-destalias指定的是要修改為的alias,這里按規矩來,改為androiddebugkey!這個命令會先后提示輸入keystore的密碼和當前alias的密碼。
4. 修改alias的密碼:
keytool -keypasswd -keystore my.keystore -alias androiddebugkey
這一步執行后會提示輸入keystore密碼,alias密碼,然后提示輸入新的alias密碼,同樣,按規矩來,改為android!
以上幾個操作執行后,my.keystore就是符合規矩的debug keystore了,接着在Eclipse的ADT設置中選中這個custom debug keystore即可,如下:
同時還可以看到證書的MD5以及SHA1指紋。
PS:以上3步命令行並沒有先后順序。