獲取證書金鑰庫檔案的 SH1-Fingerprint

要獲取證書的 Google Maps API 金鑰,你必須為 API 控制檯提供除錯/釋出金鑰庫的 SH1 指紋。

你可以通過使用獲得的金鑰儲存 JDK 的 keytool 所描述的程式在這裡的文件。

另一種方法是通過使用使用除錯/釋出證書籤名的應用程式執行此程式碼段並將雜湊列印到日誌來以程式設計方式獲取指紋。

PackageInfo info;
try {
    info = getPackageManager().getPackageInfo("com.package.name", PackageManager.GET_SIGNATURES);
    for (Signature signature : info.signatures) {
        MessageDigest md;
        md = MessageDigest.getInstance("SHA");
        md.update(signature.toByteArray());
        String hash= new String(Base64.encode(md.digest(), 0));
        Log.e("hash", hash);
    }
} catch (NameNotFoundException e1) {
    Log.e("name not found", e1.toString());
} catch (NoSuchAlgorithmException e) {
    Log.e("no such an algorithm", e.toString());
} catch (Exception e) {
    Log.e("exception", e.toString());
}