我目前正在构建一个应用程序,它将使用Apache Cordova Facebook插件来通信和验证用户.
我大约一个月前就开始工作了,当我决定升级到最新版本的Apache Cordova Facebook插件和Facebook SDK时,我接近了开发的结束 - 现在我无法让它运转起来.
我不确定Facebook是否已经改变了一些东西,或者Cordova Facebook Connect插件现在是否有问题 - 我真的被卡住了:(
以下是我正在采取的步骤和结果:
注意:我每次都尝试从计算机中删除所有程序和SDK,以消除任何交叉版本问题.
创建一个Facebook应用程序(按照说明:https://developers.facebook.com/docs/android/getting-started#create-app)
添加Android平台到应用程序
在OSX上使用'keytool'创建一个Key Hash
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
下载最新的Facebook SDK(https://developers.facebook.com/resources/facebook-android-sdk-current.zip)
安装了Facebook APK(https://developers.facebook.com/docs/android/getting-started#install)
./adb install ~/facebook-android-sdk-3.14/bin/FBAndroid-7.0.0.apk
安装了Eclipse Kepler Service Release 2
安装了最新的Android SDK(按照说明:http://developer.android.com/sdk/installing/installing-adt.html)
安装NodeJS(NPM 1.4.3)安装Cordova 3.4.1-0.1.0(终端)
sudo npm install -g cordova
创建Cordova应用程序
cordova create hello com.example.hello "HelloWorld"
cd hello
cordova platform add android
cordova build
已安装的Cordova Facebook插件
使用命令行界面(CLI)进行安装:
cordova -d plugin add https://github.com/phonegap/phonegap-facebook-plugin.git --variable APP_ID="123456789" --variable APP_NAME="myApplication"
Fetching plugin "https://github.com/phonegap/phonegap-facebook-plugin.git" via git clone
Installing "com.phonegap.plugins.facebookconnect" for android
注意:我也尝试使用以下说明进行手动安装:https://github.com/phonegap/phonegap-facebook-plugin
打开Eclipse>文件>导入> + Android>选择现有的Android代码进入工作区
进口 HelloWorld
选择应用程序属性> Android>将FacebookSDK添加为库
复制Cordova Facebook Connect附带的"简单"示例(https://github.com/phonegap/phonegap-facebook-plugin/tree/master/example/Simple)
index.html正确链接到:
cordova.js
CDV-插件-FB-connect.js
Facebook的JS-sdk.js
项目>清洁
使用Nexus S模拟器运行
HelloWorld打开后出现错误:
Cordova Facebook Connect plugin fail on init
Cordova Facebook Connect plugin fail on auth.status
就像我说的 - 我尝试过手动安装和CLI安装,没有一个可以工作!
我试过的其他版本:
Cordova 3.3.0,3.3.1,3.4.0,3.4.1
Facebook SDK 3.6,3.7,3.8,3.9
Android Studio而不是Eclipse
这个问题导致我们的开发出现重大延迟,我在网上看到其他人遇到了同样的问题,但没有回复或回答.
谢谢你的帮助!