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)的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap 在前 2 次加载时构建 Facebook 插件异常