修改Android簽名證書keystore的密碼、別名alias以及別名密碼

命令行生成keystore

dos下進入JDK的bin目錄

運行如下命令:

keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore

(-validity 20000代表有效期天數),命令完成後,bin目錄中會生成android.keystore

查看命令keytool -list -keystore "android.keystore" 輸入你設置的keystore密碼

 

之前在測試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步命令行並沒有先後順序。

 

 

不過有個問題就是,原在手機上裝了這個APP,當修改了密碼後,再導出,然後安裝,手機會提示已存在簽名衝突的應用,
這個好像必須要把原APP卸載,再重安裝新的才行.

這個修改也會改變指紋hash,會被判定爲簽名衝突

發佈了7 篇原創文章 · 獲贊 6 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章