Phonegap 2.4 Facebook插件登录不起作用

时间:2013-04-05 13:36:53

标签: javascript android facebook cordova

我试图将facebook connect插件与phonegap一起使用,我有一个奇怪的问题。我正在使用自己的手机(三星Galaxy Note II)进行调试。我已经安装了HackBook示例应用程序。

当我启动它并点击“登录到Facebook”按钮时,本地Facebook应用程序启动并提示登录页面。我输入我的FB凭证,而不是显示我的测试Facebook应用程序授予,它显示三星Galaxy Note II应用程序...

现在,如果我从手机中删除Facebook应用程序,并重新启动hackbook应用程序,登录按钮现在会显示facebook登录页面的“web”版本,一切正常。

总结一下:如果我的手机上安装了facebook应用程序,hackbook示例应用程序会使用它来执行登录facebook的步骤,但它想要授予Galaxy Note II FB应用程序而不是我自己的应用程序。

如果我删除手机的facebook应用程序,一切正常。

我需要帮助

谢谢

2 个答案:

答案 0 :(得分:0)

您需要确保在Facebook App Dashboard(原生Android应用程序部分)中添加密钥哈希。您需要哈希用于签署应用程序的密钥。还有一件事,确保包名称正确并启用Facebook登录。

答案 1 :(得分:0)

我在这里分享chandra-kantha的答案:

来源(使用屏幕提示):https://github.com/amirudin/pgb-fbconnect/issues/1#issuecomment-26134737


以下是此问题的解决方法。!!!

您需要生成Android密钥的哈希值并将其提交到Facebook上的开发者页面(https://developers.facebook.com/docs/getting-started/facebook-sdk-for-android/3.0/)以使其正常工作。此外,如果您在Windows上生成此哈希(特别是64位版本),

请使用版本0.9.8e或0.9.8d的OpenSSL for Windows而不是0.9.8k。

在此处下载openssl:https://code.google.com/p/openssl-for-windows/downloads/list

下载openssl后,解压缩文件,然后打开openssl文件夹,复制bin文件夹的路径,然后添加到系统环境变量路径。

Android签名:

Adobe®PhoneGapBuild™允许您对Android版本进行签名,因此它们适合提交到Android电子市场。要准备好发布版本,首先需要生成签名密钥库文件。详情如下:

获取合适的私钥:

1)下载并安装Java。 http://www.java.com/en/download/index.jsp

2)设置Java_Home目录:http://docs.oracle.com/cd/E19182-01/820-7851/inst_cli_jdk_javahome_t/index.html

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

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

请注意alias_name。

保留所有密码“android”

4)Keytool会询问密钥库密码。输入密码并确认:

step_4_android_keystore_pass

5)接下来,keytool将要求提供更多信息。适当供应: step_5_additional_info

6)接下来,keytool会询问Alias的密码。如果它与密钥库密码相同则返回。然后输入密码并确认:

step_6_alias_password

7)您的签名密钥现已准备好提交:

step_7_keystore_ready

提交给Build 8)转到您的帐户>编辑设置>签名密钥选项卡。 step_8_edit_account_settings

9)点击“添加密钥...”并提供以下信息。 标题 - 任何东西 别名 - 生成密钥库文件时提供的别名。

step_9_add_key

解锁钥匙。 10)转到您的帐户>编辑设置>签名密钥选项卡:

step_10_edit_account_settings

11)点击“锁定”按钮并提供以下内容:证书密码=>参考步骤#6。密钥库密码=>参考步骤#4。

step_11_unlock_key

生成新的哈希密钥

现在,您必须使用已生成的密钥库文件生成新的hashkey。打开命令行并运行以下命令。

keytool -exportcert -alias [alias_name] -keystore [your_keystore_path \ keystorefilename] .keystore | openssl sha1 -binary | openssl base64

现在复制哈希密钥并添加到您的Facebook应用程序。

**现在确保在构建应用时选择了phonegap上的密钥 构建