之前在測試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的密碼:-destalias androiddebugkey my.keystore -alias androiddebugkey
這一步執行后會提示輸入keystore密碼,alias密碼,然后提示輸入新的alias密碼,同樣,按規矩來,改為android!
以上幾個操作執行后,my.keystore就是符合規矩的debug keystore了,接著在Eclipse的ADT設置中選中這個custom debug keystore即可,同時還可以看到證書的MD5以及SHA1指紋。
** PS:以上3步命令行并沒有先后順序。**
key.alias= 別名 此別名一開始以為可以隨便寫,后來多次嘗試發現亂寫打包一定不成功,此別名要與第一次生成簽名時的別名一至,由于簽名不是我申請的,申請簽名的同事也忘記了簽名的別名,如此只好找工具看一下簽名的信息了,其實工具不用找了,在jdk中有
直接keytool -list? -v -keystore xxxx.keystore -storepass 密碼 簽名的信息就有了