如果您签署您的应用程序,那么,所以你需要得到Facebook的发行关键收到此错误。有很多方法可以得到它,但最简单的方法之一是这样的:
try {
PackageInfo info = getPackageManager().getPackageInfo(
"com.your.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) {
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
这将记录发布keyhash,并把它放在你的FB开发控制台上。干得好! 重要提示:您的应用程序必须使用密钥库进行签名,否则会记录调试密钥。 (也可以将你的软件包名称放入PackageInfo中)
将此代码写入任何活动的onCreate中,并在获得keyhash后将其删除。