每当您的应用程序正在开发中调试散列键用于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”任务,轻松获得签名构建的哈希值。 ..感谢 –