2

它工作正常。我用脸书登录。过了一会儿,我不知道确切的原因,当我尝试使用 facebook 登录时,它开始显示:

无效的密钥哈希。密钥哈希......与任何存储的密钥哈希不匹配。在http://developers.facebook.com/apps/配置您的应用程序密钥哈希...

错误消息中显示的哈希键不是在开发人员 Facebook 中设置的哈希键,并且之前已经工作过。我试图把这个哈希放在developers.facebook 中,但也不起作用。

经过数小时的研究:

  • 在 Facebook 开发者中删除了该应用
  • 从 ionic 项目中删除 cordova 插件
  • 删除 C:\Users\yourUserName.android 下的文件 debug.keystore
  • 使用“keytools”生成新密钥
  • 在developers.facebook.com 上创建一个新应用并添加新的哈希键

然后它又开始工作了。但是现在,它再次向我展示了相同的“无效哈希键”:(

有什么帮助吗?

编辑:

我只删除了 debug.keystore 并运行了“ionic run android”。然后向我显示了相同的错误,但使用了新的哈希键,我再次尝试将它们显示在错误消息中的哈希键放入,它现在正在工作。但这很奇怪,因为我第一次使用“keytools”生成并放入 developer.facebook 的哈希键是徒劳的。

我遵循本教程:https ://ionicthemes.com/tutorials/about/native-facebook-login-with-ionic-framework

4

2 回答 2

2
  • 下载APK ( your_apk_name.apk)
  • 运行命令keytool -list -printcert -jarfile your_apk_name.apk
  • 复制 SHA1 值
  • 访问http://tomeko.net/online_tools/hex_to_base64.php
  • 粘贴 SHA1 值并点击转换。
  • 复制输出(base64)并将其用作您的 Facebook 哈希。
于 2016-08-19T06:57:05.220 回答
0

您需要将在这些错误消息中看到的所有密钥哈希添加到 Facebook 应用程序的设置中。转到developers.facebook.com/yourappid,设置> 基本,向下滚动到关键哈希并将其添加到那里。我们现在有 4 种不同的哈希值,我相信它们会更进一步。

似乎在用户手机上使用 Facebook 登录的其他应用程序可以更改您的应用程序在登录时所需的哈希值。因此,如果您的手机上有主要的 Facebook 应用程序,那么与只有 Facebook Messenger 相比,您的应用程序登录需要不同的哈希值。这是我们的工作理论,它与迄今为止的所有证据相矛盾。

我建议为客户端错误设置一个记录器,这样您就可以在它们弹出时获取这些哈希值。这显然不是理想的解决方案,所以我很想听听其他人对此有何发现,但至少目前,它正在发挥作用。

于 2019-04-30T09:43:26.733 回答