我已经正确地将Facebook SDK应用到我的Android应用程序中我相信开发密钥哈希等,我正在测试登录功能。我第一次使用这个功能,Facebook页面向我提供了通常的“此应用程序想要访问您的简历”与我的图片,点击接受它返回给我的应用程序,成功。但是第二次,从现在开始,它在单击登录按钮时显示以下错误。
“此应用未配置Android密钥哈希。请在”http://developer.facebook.com/apps/28748493729“
配置应用密钥哈希值似乎设置在使用它之后以某种方式忘记了我的密钥哈希,但是当我访问提供的链接时它显示开发密钥哈希仍然存在。我错过了关键哈希的工作原理吗?
任何帮助表示赞赏,
感谢。
答案 0 :(得分:0)
public static String getKeyHash(Context context, String packageName) {
try {
PackageInfo info = context.getPackageManager().getPackageInfo(
packageName,
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
String keyHash = Base64.encodeToString(md.digest(), Base64.DEFAULT);
return keyHash;
}
} catch (PackageManager.NameNotFoundException e) {
return null;
} catch (NoSuchAlgorithmException e) {
return null;
}
return null;
}
使用上面的方法生成哈希密钥并将其添加到facebook开发者应用程序详细信息中
最好使用新的sdk,即Facebook sdk4