签署android应用程序后出现Facebook密钥哈希错误
我有一个与facebook集成的应用程序。当我从eclipse运行它时,它工作得很好,但是在对应用程序签名之后,我得到了这个错误签署android应用程序后出现Facebook密钥哈希错误,android,facebook,Android,Facebook,我有一个与facebook集成的应用程序。当我从eclipse运行它时,它工作得很好,但是在对应用程序签名之后,我得到了这个错误 Login failed: invalid_key:Android key mismatch. Your key "JGn9F2vDQ/w6hexLxdefCUpxYIA" does not match the allowed keys specified in your application settings. Check your application se
Login failed: invalid_key:Android key mismatch.
Your key "JGn9F2vDQ/w6hexLxdefCUpxYIA" does not match the allowed keys specified in your application settings.
Check your application settings at http://www.facebook.com/developers
我已经检查了我的应用程序生成的密钥散列,并且www.facebook.com/developers上的一个密钥散列是相同的。请帮忙 您可以尝试以下方法来生成哈希键:
// Put this code on oncreate method
try {
//Replace your.package.name with your base packege name.
PackageInfo appPkgInfo = getPackageManager().getPackageInfo("your.package.name", PackageManager.GET_SIGNATURES);
for (Signature signature : appPkgInfo.signatures) {
MessageDigest messageDigest = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
// See Logcat for your hash key and put in on Facebook developer console.
Log.d("Your Hash key", Base64.encodeToString(messageDigest.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
Log.e("ERROR",e.getMessage());
} catch (NoSuchAlgorithmException e) {
Log.e("ERROR",e.getMessage());
}
这是通过从签名后生成的密钥库生成hashkey来解决的
我使用这个答案从密钥库生成hashkey。感谢他:)您是如何生成哈希键的?您是否检查了代码中给出的基本包名称和facebook开发者所有这些都需要完全相同的名称。