【发布时间】:2013-10-21 01:39:55
【问题描述】:
我在 Play Store 上有一个生产应用程序,它使用 Facebook SDK 登录。 当我从 Eclipse 调试应用程序时没有问题,但是当它投入生产时,它在 Facebook 向我询问权限后给了我以下错误。 我在 developer.facebook.com 上的应用页面上添加了使用 keytool 生成的密钥哈希:
keytool -exportcert -alias diego -keystore "C:\Users\Diego\Desktop\CeluChat.KeyStore" | "C:\openssl\bin\openssl.exe" sha1 -binary | "C:\openssl\bin\openssl.exe" base64
CeluChat.KeyStore 是我导出签名应用程序时使用的密钥库,当 keytool 提示我输入密码时,我在导出时输入了相同的密码。
但是在生产(从 Play 商店下载)给我的错误是:
10-20 22:21:10.752: W/fb4a(:):BlueServiceQueue(5872): com.facebook.http.protocol.ApiException:密钥哈希 VQ3XhZb5_tBH9oGe2WW32DDdNS0 不匹配任何存储的密钥哈希。
异常中的 Key Hash 与 keytool 生成的 Key Hash 不同。无论如何,我在 Facebook 上添加了 Key Hash,但它仍然无法正常工作。
【问题讨论】:
-
Facebook今天出现全球性问题,稍后查看
-
当您为 Play 商店提交 apk 时,通常会使用与开发时不同的密钥库,这会为您提供不同的密钥哈希。您需要将两个密钥哈希都放入您的设置中。您确定错误中给出的值也不起作用吗?您可以发布您的应用设置的屏幕截图吗?
-
我使用 keytool 生成的密钥哈希是使用 relase 密钥,而不是调试,所以问题不在于那个。还是谢谢
-
如果你是从日志中复制密钥哈希并使用它,注意在日志中它最后没有打印一个=,你必须在日志中打印的内容后缀一个=并且然后在 Facebook 密钥哈希中使用它。
标签: android facebook-android-sdk