Phonegap 构建 facebook 连接插件 (android)

Posted

技术标签:

【中文标题】Phonegap 构建 facebook 连接插件 (android)【英文标题】:Phonegap Build facebook Connect Plugin (android) 【发布时间】:2013-08-07 18:49:19 【问题描述】:

我在使用带有 phonegap 构建的 facebook 插件时遇到了一个奇怪的问题。 这听起来像一个证书问题,但我无法弄清楚。

我尝试了此处找到的示例代码:github.com/amirudin/pgb-fbconnect

我按照 readme.md 文件中的说明进行操作。

当我第一次启动 android 应用程序并单击“登录”按钮时,一切正常,我可以将自己连接到 facebook 应用程序。

现在,我按下了注销按钮。好的,它的工作原理。

但是如果我再次点击登录按钮,我会收到一条 facebook 错误消息:“无效的 android_key_parameter。密钥 xxxxxxxxxxxxxx 与任何允许的密钥都不匹配。”

但消息中的 xxxxxx 键与我在 facebook 应用程序配置面板中输入的键不对应。

我在这里有一个关于我的问题的小视频:Dropbox video

我不明白为什么它在第一次登录时运行良好,而在第二次登录时失败....看来第二次,签名改变了。

救命!!

如果有人想测试它,我创建了一个github repo。您只需更改 config.xml 中的 APP_NAME 和 APP_ID 以及 index.html 中的 APP_ID

拥有“几乎”有效的东西是非常令人沮丧的。

您是否成功重现了我的错误/行为? (登录 + 注销 + 登录 = 失败)

【问题讨论】:

看起来确实很奇怪。我建议您在他们的 GetSatisfaction 网站上发布有关此问题的信息:community.phonegap.com/nitobi/products/nitobi_phonegap_build 【参考方案1】:

您所面临的问题是因为您没有使用正确的密钥库文件、签名密钥和密钥算法。您需要生成 Android 密钥的哈希值并将其提交到 Facebook 上的开发者页面。

如果您在 Windows(特别是 64 位版本)上生成此哈希,请使用适用于 Windows 的 OpenSSL 0.9.8e 或 0.9.8d 版本,而不是 0.9.8k。 em>

下载 openssl 后,以管理员身份打开命令提示符 (cmd.exe),然后运行以下命令:

keytool -genkey -v -keystore [keystore_name].keystore -alias [alias_name] -keyalg RSA -keysize 2048 -validity 10000

请注意alias_name,并保留所有密码andriod

现在,转到您的 phonegap 帐户>>编辑帐户>>单击签名密钥选项卡>>单击“添加密钥...”并提供以下信息:

Title - anything

Alias - alias_name that you have given while generating the keystore file.

然后,使用您生成的密钥库文件创建一个新的哈希键,然后在您的 Facebook 应用程序中更新该哈希键。

使用以下命令生成哈希键。

keytool -exportcert -alias [alias_name] -keystore [keystore_filename.keystore] | openssl sha1 -二进制 | openssl base64

应该是这样的!

【讨论】:

以上是关于Phonegap 构建 facebook 连接插件 (android)的主要内容,如果未能解决你的问题,请参考以下文章

Facebook 连接 + Phonegap 3

facebook 连接 + Phonegap

Facebook 插件不适用于 phonegap 构建

Phonegap 在前 2 次加载时构建 Facebook 插件异常

facebook 错误:会话已关闭且未正常关闭(phonegap 构建/facebook 插件错误)

Facebook“错误 2”与 Phonegap 在 ios 上构建 Facebook Connect 插件