代码 :
// Add code to print out the key hash
PackageInfo info = getPackageManager().getPackageInfo("com.my.package", PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash1:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
Log.d("KeyHash2:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
日志输出:
02-21 10:07:55.957: D/KeyHash1:(2666): A0AFqS0kOUlvxvH1L3VCCrTXNY8=
02-21 10:07:55.967: D/KeyHash2:(2666): 2jmj7l5rSw0yVb/vlWAYkK/YBwk=
我对这两个不同的哈希键感到困惑。现在我的问题是哪个密钥适合我的应用程序
我认为md.digest()
在第一个和第二个方法调用时返回不同的值。