每當您的應用程序正在開發中調試散列鍵用於facebook集成。調試哈希密鑰是特定於計算機的(即,您正在其中工作的PC)
雖然釋放哈希鍵與調試密鑰(它不會更改)相比不同。當您爲上傳生成已簽名的apk時,必須更新發布哈希鍵才能與您的應用進行Facebook集成。
閱讀this關於如何創建Facebook的
釋放散列鍵可以使用下面的代碼檢查你的密鑰散列更好的理解:
// Add code to print out the key hash
try {
String PACKAGE_NAME=getApplicationContext().getPackageName();;
PackageInfo info = getPackageManager().getPackageInfo(
PACKAGE_NAME,
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
} catch (NoSuchAlgorithmException e) {
}
我面臨同樣的問題,之後我得到的哈希鍵的同時調試標誌apk.that鍵爲我工作。 – Vasant
您需要在Facebook開發者控制檯註冊您的散列鍵,同時釋放您的APK在發佈模式! – Piyush
在Facebook應用程序設置頁面中,有一個選項可以添加多個哈希值...如果您使用的是android studio,您可以通過直接從右側窗口中的gradle任務列表運行「signingReport」任務,輕鬆獲得簽名構建的哈希值。 ..感謝 –