【发布时间】:2018-01-06 01:48:47
【问题描述】:
我正在制作一个 android 应用程序,用户可以在其中使用 Facebook 登录(通过 Firebase 通过 FirebaseUI)。我是 android 开发和 Facebook android 身份验证的新手。用电子邮件、gmail 和 twitter 登录都可以,但用 Facebook 登录不行,因为我需要这个哈希键...
当我设置 Facebook 身份验证并单击使用 Facebook 登录时,我收到以下错误。
Invalid key hash. The key hash `[keyhash1=]` does not match any stored key hashes. Configure your app key hashes at https://developers.facebook.com/apps/[app id].
请注意,它们显示的 [keyhash1=] 与我在命令行中运行此 [keyhash2=] 时获得的密钥哈希不同:
keytool -exportcert -alias androiddebugkey -keystore [my name]\.android\debug.keystore | “C:\Users\[my name]\openssl\bin\openssl” sha1 -binary | “C:\Users\[my name]\openssl\bin\openssl” base64
当我将 debug.keystore 文件放入这个很酷的程序中以获取 Facebook 的哈希键 (https://www.androidfilehost.com/?fid=95864024717072835) 时,我也得到了相同的哈希键 [keyhash2=]。所以我得到的钥匙一定是好的……
所以我输入https://developers.facebook.com/apps/[my app id]/settings/ 哈希键[keyhash2=] 仍然出现上述错误。我什至放了两个哈希键,一个是我用 cmd 得到的,一个是我在错误中看到的(包括 = 符号),但我仍然有同样的错误。有谁知道为什么?
我还在 facebook 中看到它被命名为 key hash,而在 cmd 中它被命名为 hash key。应该是一样的吧……
【问题讨论】:
-
对我来说,问题在于生成的哈希密钥是错误的,因为密钥库文件 (.jks) 位于该文件夹名称包含空格的文件夹中(因此路径将包含空格)。
标签: android firebase firebase-authentication firebaseui facebook-authentication