獲取debug.keystore和SHA1碼
在開發百度地圖時,需要使用keystore,併爲此做出筆記,記錄一下debug.keystore的生成,和獲取SHA1碼
第一步: 運行cmd.exe 進入DOS命令界面
第二步: C盤用戶目錄下找到.android文件夾,並進入該文件夾(C:\Users\Administrator.android)
第三步: 運行keytool -list -v -keystore debug.keystore
第四步: 輸入口令:android
第五步: 界面顯示
*******************************************
*******************************************
輸入密鑰庫口令:
密鑰庫類型: JKS
密鑰庫提供方: SUN
您的密鑰庫包含 1 個條目
別名: androiddebugkey
創建日期: 2018-11-6
條目類型: PrivateKeyEntry
證書鏈長度: 1
證書[1]:
所有者: C=US, O=Android, CN=Android Debug
發佈者: C=US, O=Android, CN=Android Debug
序列號: 1
有效期爲 Wed Jun 27 15:33:02 CST 2018 至 Fri Jun 19 15:33:02 CST 2048
證書指紋:
MD5: EF:F7:BD:07:9E:CF:BD:EF:23:A5:D8:69:D5:CF:17:E7
SHA1: 7A:07:30:56:8F:63:C3:B8:11:BD:44:EA:F0:9D:49:CC:19:83:7D:58
SHA256: 6E:86:69:D7:F9:12:40:DA:85:66:05:78:2B:CD:BC:82:B6:82:07:DE:72:18:1A:BC:2E:EB:EB:AD:3B:CC:43:1D
簽名算法名稱: SHA1withRSA
主體公共密鑰算法: 1024 位 RSA 密鑰
版本: 1
*******************************************
*******************************************
第六步: 獲取相關信息並保存,.android
文件夾下會生成一個 debug.keystore
文件,這個就是創建開發模式的簽名文件,並拷貝出來使用
注:
1. 開發是獲取第五步的重要數據,和所產生的簽名文件
在AndroidStudio進行打包簽名時用到的數據
- 密鑰密碼:android
- 密鑰別名:androiddebugkey
別名查看方式:我用AS查看的當前簽名別名 圖片地址 - 簽名文件[debug]:debug.keystore文件
在開發時集成百度地圖等第三方,會用到SHA1碼
- SHA1: 7A:07:30:56:8F:63:C3:B8:11:BD:44:EA:F0:9D:49:CC:19:83:7D:58
2. 在創建debug.keystore文件時,會遇到以下問題
① 執行第三步的時候會遇到
keytool 錯誤: java.lang.Exception: 密鑰庫文件不存在: debug.keystore
java.lang.Exception: 密鑰庫文件不存在: debug.keystore
at sun.security.tools.keytool.Main.doCommands(Main.java:783)
at sun.security.tools.keytool.Main.run(Main.java:366)
at sun.security.tools.keytool.Main.main(Main.java:359)
很明顯的錯誤,密鑰庫文件不存在,就是說.android文件夾下沒有密鑰庫文件debug.keystore
解決方法
,從別處拷貝一個debug.keystore文件放到.android文件夾下;或者創建一個新的debug.keystore
②執行第五步後也會出現這樣的警告
Warning:
JKS 密鑰庫使用專用格式。建議使用 "keytool -importkeystore -srckeystore debug.keystore -destkeystore debug.keystore -deststoretype pkcs12"
遷移到行業標準格式 PKCS12。
警告就警告,不過我的好奇心還是容不得警告,就運行了建議使用“……”這條命令;
會提示“輸入源密鑰庫口令:”
我輸入之前所設置的口令:android,並按下回車鍵
會提示
*******************************************
*******************************************
已成功導入別名 androiddebugkey 的條目。
已完成導入命令: 1 個條目成功導入, 0 個條目失敗或取消
Warning:
已將 "debug.keystore" 遷移到 Non JKS/JCEKS。將 JKS 密鑰庫作爲 "debug.keystore.old" 進行了備份。
*******************************************
*******************************************
下次再運行keytool -list -v -keystore debug.keystore
這條命令就不會有什麼警告了