Facebook SDK 无效哈希键
Facebook SDK invalid Hash Key
我正在和朋友一起写 android 申请。在应用程序中,我们使用 Facebook SDK 和一个登录按钮。我们已经使用类似于 facebook 在 facebook 的应用配置文件中建议 Code 的代码设置哈希键。我们还在 Settings -> Key Hashes 下写了密钥。在真实设备上测试登录时,如果本机 facebook 应用程序正在使用我的朋友帐户,我们的应用程序可以登录,但如果我使用我的帐户,我会收到错误消息:
Invalid key hash . The key hash XXXXXXXXX.... doesn't not match any stored key hashes . configure your app key hashes at ......
我们检查了应用程序配置文件,我的帐户也写在那里具有管理员权限。
运行 此代码在您的应用程序中,您将拥有哈希键:
try
{
//paste Your package name at the first parameter
PackageInfo info = getPackageManager().getPackageInfo("PUT_YOUR_PACKAGE_NAME_HERE",
PackageManager.GET_SIGNATURES);
for (android.content.pm.Signature signature : info.signatures)
{
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
String sign = Base64.encodeToString(md.digest(), Base64.DEFAULT);
Log.e("MY KEY HASH:", sign);
Toast.makeText(getApplicationContext(), sign, Toast.LENGTH_LONG).show();
}
}
catch (PackageManager.NameNotFoundException e)
{
}
catch (NoSuchAlgorithmException e)
{
}
完整的 facebook 登录示例 。
由于您是从其他设备登录的,因此您应该在 facebook console
中启用您的应用程序。检查 this answer 看看如何。
确保您使用的是正确的密码,因为 keytool 显然不会拒绝不正确的密码,并且会生成不正确的哈希值。默认密钥库密码是 android
我正在和朋友一起写 android 申请。在应用程序中,我们使用 Facebook SDK 和一个登录按钮。我们已经使用类似于 facebook 在 facebook 的应用配置文件中建议 Code 的代码设置哈希键。我们还在 Settings -> Key Hashes 下写了密钥。在真实设备上测试登录时,如果本机 facebook 应用程序正在使用我的朋友帐户,我们的应用程序可以登录,但如果我使用我的帐户,我会收到错误消息:
Invalid key hash . The key hash XXXXXXXXX.... doesn't not match any stored key hashes . configure your app key hashes at ......
我们检查了应用程序配置文件,我的帐户也写在那里具有管理员权限。
运行 此代码在您的应用程序中,您将拥有哈希键:
try
{
//paste Your package name at the first parameter
PackageInfo info = getPackageManager().getPackageInfo("PUT_YOUR_PACKAGE_NAME_HERE",
PackageManager.GET_SIGNATURES);
for (android.content.pm.Signature signature : info.signatures)
{
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
String sign = Base64.encodeToString(md.digest(), Base64.DEFAULT);
Log.e("MY KEY HASH:", sign);
Toast.makeText(getApplicationContext(), sign, Toast.LENGTH_LONG).show();
}
}
catch (PackageManager.NameNotFoundException e)
{
}
catch (NoSuchAlgorithmException e)
{
}
完整的 facebook 登录示例
由于您是从其他设备登录的,因此您应该在 facebook console
中启用您的应用程序。检查 this answer 看看如何。
确保您使用的是正确的密码,因为 keytool 显然不会拒绝不正确的密码,并且会生成不正确的哈希值。默认密钥库密码是 android