JDK 7 起 keytool -list 預設輸出 SHA-1 指紋,但 Google Maps API v1(已棄用)及部分舊系統需 MD5 指紋。需加入 -v 參數顯示詳細資訊,即可同時看到 MD5、SHA-1、SHA-256 等所有指紋。
keytool -v -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android
別名: androiddebugkey
建立日期: 2023-10-15
項目類型: PrivateKeyEntry
憑證鏈長度: 1
憑證[1]:
擁有者: CN=Android Debug, O=Android, C=US
發出者: CN=Android Debug, O=Android, C=US
序號: 1
有效期: 從 2023-10-15 至 2053-10-07
憑證指紋:
MD5: 94:1E:43:49:87:73:BB:E6:7D:9A:3C:4F:1A:2B:5C:6D
SHA1: A1:B2:C3:D4:E5:F6:07:18:29:3A:4B:5C:6D:7E:8F:90:01:12:23:34
SHA256: ...
簽名演算法名稱: SHA256withRSA
主體公鑰演算法: 2048 位元 RSA 金鑰
版本: 3
| 參數 | 作用 |
|---|---|
-v | Verbose 模式,輸出所有指紋演算法(MD5、SHA1、SHA256) |
-list | 列出金鑰庫條目 |
-alias androiddebugkey | 指定偵錯金鑰別名(預設) |
-keystore debug.keystore | 指定金鑰庫檔案路徑 |
-storepass android | 金鑰庫密碼(預設) |
-keypass android | 金鑰密碼(預設) |
C:\Users\<用戶名>\.android\debug.keystore~/.android/debug.keystorekeystore.jks 或 release.keystorekeytool 行為一致,仍需 -v 看 MD5。
# Linux/macOS
keytool -v -list -alias androiddebugkey -keystore ~/.android/debug.keystore -storepass android -keypass android 2>/dev/null | grep "MD5:" | awk '{print $2}'
# Windows PowerShell
keytool -v -list -alias androiddebugkey -keystore $env:USERPROFILE\.android\debug.keystore -storepass android -keypass android | Select-String "MD5:" | ForEach-Object { $_.ToString().Split(":")[1].Trim() }
掌握 -v 參數,即可隨時取得任意指紋演算法,應對新舊系統整合需求。