科尔多瓦:脸谱插件为Android生成错误
我使用Cordova 3.4和Android的Cordova Facebook Plugin在Android上构建一个样本Cordova Facebook App。
以下是我所做的步骤:
1创建一个空白的Cordova应用程序
2编辑Test / config.xml并插入
<feature name="org.apache.cordova.facebook.Connect">
<param name="android-package" value="org.apache.cordova.facebook.ConnectPlugin" />
</feature>
3安装Facebook SDK for Android和Facebook APK
4从Cordova Facebook Plugin文件夹复制src / android /的ConnectPlugin.java到Test / platforms / android / src / org / apache / cordova / facebook /
5从Cordova Facebook Plugin文件夹中,将www / cdv-plugin-fb-connect.js和www / facebook-js-sdk.js复制到您的应用程序的Test / www文件夹中
6去测试/并执行cordova构建
最后一步输出以下错误:
BUILD FAILED
/Applications/adt-bundle-mac-x86_64-20140321/sdk/tools/ant/build.xml:601: The following error occurred while executing this line:
/Users/mg/Documents/Android/Plugins/facebook-android-sdk-3.8.0/facebook/build.xml:46: sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var
Total time: 0 seconds
Error code 1 for command: ant with args: debug,-f,/Users/mg/Documents/Android/Test/platforms/android/build.xml,-Dout.dir=ant-build,-Dgen.absolute.dir=ant-gen
Error: /Users/mg/Documents/Android/Test/platforms/android/cordova/build: Command failed with exit code 2
at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/src/superspawn.js:112:23)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:743:16)
at Process.ChildProcess._handle.onexit (child_process.js:810:5)
我怎么解决这个问题?
你的问题的解决方案是在这一行:
/Users/mg/Documents/Android/Plugins/facebook-android-sdk-3.8.0/facebook/build.xml:46: sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var
你的facebook SDK没有找到android SDK目录。 所以你需要运行:
android update project --path /Users/mg/Documents/Android/Plugins/facebook-android-sdk-3.8.0/facebook
然后再试一次。
我有同样的问题,在这里我做了什么:
在SDK的facebook文件夹中,创建local.properties文件并放置您的路径:
sdk.dir=/my/path/to/adt-bundle-linux-x86_64-20140702/sdk
您可以从您的主项目的local.properties中进行复制。
现在,如果想使用cordova cli和eclipse,你需要知道adt build和ant build是不同的,你可以在这里看到https://stackoverflow.com/a/19746506/1833734。 所以,这里的诀窍是:
如果你想使用ant(cordova console):
ant clean
。 你的主要项目是这样的: /path/to/my/cordova/project/platforms/android
cordova run
或cordova build
PS。 检查主项目的Eclipse中的属性,facebook插件添加facebook sdk库,在我的情况下路径是错误的,所以我修复了添加自己的路径。 这可以在eclipse和cordova-cli中产生一个中断。
如果你需要改变日食,你需要这样做:
所以,您需要使用这些步骤,您需要将eclipse更改为cordova-cli,反之亦然。
最后一点:不要忘记在使用cordova cli后刷新(f5)eclipse项目。
链接地址: http://www.djcxy.com/p/53413.html