Facebook登录android时密钥哈希不匹配

San*_*osh 17 android facebook facebook-login

我的应用程序使用简单的Facebook登录.我已经在我的应用仪表板,key_hash部分输入了keyhash,我能够成功登录.现在我已经发布了应用程序并尝试登录,但是它在webview上显示错误消息

"Invalid android_key parameter. The key rX6qeRitkFCWui3de74rxB_qc1s does not match any allowed key. Configure your app key hashes at http://developers.facebook.com/apps/<my_fb_app_id>". 
Run Code Online (Sandbox Code Playgroud)

实际上rX6qeRitkFCWui3de74rxB_qc1s不是我在本机应用程序中的密钥哈希.它来自哪里?无论如何,我也在本机应用程序中输入了此键盘,但收到相同的错误消息,无法登录.哪里出错了?请帮我.

Ris*_*tam 26

您可以通过编码生成哈希键,您只需做一件事.将此代码粘贴到主类(第一类)中,然后运行应用程序并检查logcat,您将在其中找到哈希键.

还有一件事,用你的包名替换这个包名"com.example.creeper":

try{
        PackageInfo info = getPackageManager().getPackageInfo(
                "com.example.creeper", 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) {

}
Run Code Online (Sandbox Code Playgroud)

  • 这将生成默认的调试keyhash,但不会生成.对于生产,您需要使用自己的私有证书生成keyhash.如此处所述http://stackoverflow.com/questions/20506658/android-facebook-sdk-key-hash-does-not-match-any-stored-key-hashes-when-uploadi (5认同)

Arp*_*tel 11

如果您遇到此问题,请将此密钥放入developer.facebook.com

在此输入图像描述

然后确保你的应用程序是developer.facebook.com

此绿色圆圈表示应用已上线 在此输入图像描述

如果不是,请按照以下两个步骤使您的应用程序生效

步骤1转到您的应用程序 - >设置并添加联系人电子邮件,然后应用保存更改

Setp 2然后转到Status&Review选项并确保此切换为Yes我添加了一个屏幕截图

在此输入图像描述

  • 只是一个简单的注释,可以解决其他问题...在使用此答案手动输入密钥哈希时要非常小心.L或I(眼睛)这样的字母在使用大写和小写时真的很混乱..它今天发生在我身上,这个答案总是有效,但需要区分大小写的注意力. (4认同)

Mah*_*esh 5

尝试使用用于签署已发布应用程序的应用程序的密钥库文件生成新的keyhash.此问题可能是由调试密钥库生成的keyhash引起的,该密钥存储仅适用于未签名的apk文件.请参阅以下链接的第5步,了解如何生成keyhash https://developers.facebook.com/docs/getting-started/facebook-sdk-for-android/3.0/

并使用Facebook的应用设置页面更新相同内容.

还要检查您的包名和类名是否正确.


小智 2

您需要从 debug.keystore 获取密钥散列,或者如果您使用发布密钥对其进行签名,则需要使用该密钥散列。确保您的别名也正确。这会对你的密钥哈希产生影响。

看看这个: 如何创建 Facebook 密钥哈希?