[英]Key Hash is different from release key and debug keystores in android
我在應用程序中使用了Facebook SDK,為此我使用debug.keystore和release keystore生成了密鑰哈希。 我已經在我的應用程序的開發人員頁面中添加了兩個密鑰哈希。 但是我仍然收到類似的錯誤
com.facebook.http.protocol.ApiException:密鑰哈希“ LLSiRNj0hXH8BQpUJivI0UJz00Q”與任何存儲的密鑰哈希都不匹配。
但是以上錯誤消息中給出的密鑰哈希不屬於我生成的任何密鑰哈希。 我不知道此密鑰哈希將如何生成以及它來自何處。
我還在開發人員頁面中添加了以下代碼生成的密鑰哈希。
錯誤消息中的密鑰哈希與以下3個密鑰哈希都不匹配(通過以下代碼調試密鑰庫,釋放密鑰庫,密鑰哈希)
碼:
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.bloopit.activities",
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
System.out.println("KeyHash : "+ Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
我只想知道錯誤消息中的密鑰哈希來自何處? 我將密鑰哈希添加到我的開發人員頁面上,並且運行良好,但是我不知道它是否正確。
會導致任何問題嗎?
謝謝} catch(NameNotFoundException e){} catch(NoSuchAlgorithmException e){}
對於Linux
打開終端:
對於調試版本
keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64
您會從“ .android”文件夾中找到debug.keystore並從中復制並粘貼到桌面上,然后運行上述命令
發布版本
keytool -exportcert -alias <aliasName> -keystore <keystoreFilePath> | openssl sha1 -binary | openssl base64
注意:確保在兩種情況下都必須輸入密碼。 如果未要求輸入密碼,則表示命令中存在錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.