我已经看到很多关于仅使用Phonegap或Phonegap和Phonegap Build的Facebook Connect
插件的问题,但我似乎仍然无法使其正常工作。
我创建了我的Facebook应用程序(实际上我所做的只是clik“创建新应用程序”按钮)。我指定了Display Name
和Namespace
并获得了app ID
。我在index.html和config.xml中使用Facebook Connect
和app ID
更新了https://github.com/amirudin/pgb-fbconnect(这是Namespace
插件的简单示例)中的代码。我将其压缩到Phonegap Build(在config.xml中没有指定Phonegap版本,因此默认为2.9)。
在Android(2.3.6和4.1)上,我总是得到Cordova Facebook Connect plugin fail on init!
在iOS上没有显示任何内容,但也没有任何效果。
由于仅在致电FB._nativeInterface.init
时显示此提醒,我尝试在nativeInterface : false
中使用nativeInterface : CDV.FB
代替FB.init
。在这种情况下,如果我尝试登录,则会显示登录页面,但在输入我的姓名和密码后,我会收到Given URL is not permitted by the application configuration.: One or more of the given URLs is not allowed by the App's settings...
。
我不确定如何配置Facebook应用程序:
Native iOS App
,指定Bundle ID
(与我在developer.apple.com上创建的App ID
相同,与Phonegap Build config.xml中的小部件ID相同)并启用{ {1}}。 Facebook Login
保留为0,iPhone and iPad App Store ID
处于停用状态且Deep Linking
为空。我选择了URL scheme suffix
,指定了Native Android App
(与Phonegap Build config.xml中的小部件ID相同),Package Name
(一个哈希 - 我还添加了密钥Phonegap Build - 顺便说一下,钥匙解锁只有一个小时是正常的,而对于iOS来说这是一个月吗?),启用Key Hashes
。我不知道我应该为Facebook Login
使用什么(我尝试将其留空,然后使用与Class Name
相同并在末尾添加“.activity”)。 Package Name
被禁用。以下是我用来生成密钥和哈希的内容:
//生成密钥
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
//获取哈希(在Win7 64上使用OpenSSL 0.9.8e)
keytool -exportcert -alias alias_name -keystore my-release-key.keystore | openssl sha1 -binary | openssl base64
我尝试将Deep Linking
设置为App Domains
,但后来我告诉我还需要设置网站网址或Canvas网址。
localhost
,并为Website with Facebook Login
指定了http://localhost/
Site URL
,为App on Facebook
指定了http://localhost/
,为Canvas URL
指定了https://localhost/
。我将Secure Canvas URL
和Canvas Width
移至Canvas Heigth
和Fixed
,将Fluid
移至Unity Integration Enabled
之后的事件我仍然得到相同的Disabled
错误。我知道Phonegap使用Given URL is not permitted by the application configuration...
而不是file://
,但后来我不知道如何配置facebook应用程序。
我不确定http://localhost
错误是否与Cordova Facebook Connect plugin fail on init!
问题相关联,或者是否是我必须解决的两个无关的问题。
答案 0 :(得分:1)
第二天在另一部Android手机上试用我的应用程序时,我注意到我没有更多错误。我在其他Android手机上删除并重新安装了该应用程序,该插件也开始正常运行。
我不确定问题可能是什么:hydra插件的问题(现在我知道如果发生奇怪的事情,我可能需要移除并重新安装应用程序,并确保水合作用完成),需要更多时间在Facebook上创建应用程序(即使它声明它可能需要几分钟而不是几小时来更新所有服务器),...