离子与phonegap-facebook-plugin:无效的哈希密钥

时间:2016-06-10 12:24:26

标签: ionic-framework phonegap-facebook-plugin

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

  

无效的密钥哈希。密钥哈希.....与任何存储的密钥哈希都不匹配。在http://developers.facebook.com/apps/ ...

配置您的应用密钥哈希值

错误消息中显示的散列键不是开发人员facebook中设置的散列键,而且以前曾用过。我试图将这个哈希值放在developers.facebook中,但也不起作用。

经过数小时的研究:

  • 删除了Facebook开发者中的应用
  • 从离子项目中删除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

2 个答案:

答案 0 :(得分: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)并将其用作你的脸书哈希。

答案 1 :(得分:0)

您需要将在这些错误消息中看到的所有关键哈希添加到Facebook应用程序的设置中。转到developers.facebook.com/yourappid,转到“设置”>“基本”,向下滚动到关键哈希并将其添加到此处。现在,我们为我们提供了4种不同的哈希值,我相信它们会更加向前发展。

在用户手机上使用Facebook登录的其他应用程序似乎可以更改您的应用登录所需的哈希值。就像,如果您的手机上已经安装了主要的Facebook应用程序,则与仅使用Facebook Messenger相比,应用程序的登录名需要使用不同的哈希值。这是我们的工作理论,迄今尚无所有证据。

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