我正在开发一个 PhoneGap/Cordova 插件,该插件应该提供一个用于发送和接收 OSC 消息(开放声音控制)的套接字。为此,我想使用JavaOSC http://www.illposed.com/software/javaoscdoc/但我不确定如何将库包含到我的项目中。
我正在使用 Android Studio 并且我基本上遵循本教程 http://devgirl.org/2013/07/17/tutorial-how-to-write-a-phonegap-plugin-for-android/建立我的项目。首先,我将原始 JavaOSC 类文件放置在与 OSCPlugin.class 相同的目录中,并将导入声明放置在 OSCPlugin.class 的末尾:
import com.illposed.osc;
那行不通。
下一步我尝试在项目的模块设置中添加来自 Maven 的库。我能够从 maven 下载 jar 文件并将它们安装到 /platforms/android/libs 中。在模块“android”的设置中,我可以看到“Android API 17”应该用作 SDK,包括 cordova-3.1.0 和 com.illspoke.osc:javaosc-core:0.2 - 均已激活。我可以在 Android Studio 的导航器中看到 cordova-3.1.0.jar 以及 javaosc-core-0.2.jar,其中包含 com.illspoke.osc。
但是,当尝试编译我的项目时,我得到:
Gradle: cannot find symbol class osc
从包含上述导入声明的 OSCPlugin.class 中触发
我对 Java 的经验很少,对 Android 开发的经验更少。但我有兴趣解决这个谜题并开始。我搜索了 Java 文档,但问题不仅仅在于 Java 内部,还在于 Android 项目的结构内部。
如果有人能够阐明这个问题,我将不胜感激。任何提示都将受到高度赞赏!
对于我的 Phonegap 项目之一,我需要阿帕奇共享网 http://commons.apache.org/proper/commons-net/,尝试遵循这些steps http://www.plotprojects.com/developing-a-cordova-phonegap-plugin-for-android/:
...
<source-file src="src/android/xxx.jar" target-dir="libs" framework="true" />
<source-file src="src/android/MyPlugin.java" target-dir="src/com/mypackage" />
...
不幸的是,没有成功。诀窍是将第三方库嵌入到另一个插件中(遵循插件结构)。将 org.apache.commons.net 作为顶级目录:
org.apache.commons.net
+src
+android(this is where the .jar is located)
+www (empty, not referencing any .js)
+plugin.xml
为了简洁起见,plugin.xml如下:
<?xml version="1.0" encoding="UTF-8"?>
<plugin xmlns="http://www.phonegap.com/ns/plugins/1.0"
id="org.apache.commons.net"
version="0.1.0">
<name>org.apache.commons.net</name>
<description>org.apache.commons.net</description>
<license>Apache License, Version 2.0</license>
<keywords>org.apache.commons.net</keywords>
<!-- android -->
<platform name="android">
<config-file target="res/xml/config.xml" parent="/*">
<feature name="org.apache.commons.net">
<param name="android-package" value="org.apache.commons.net"/>
</feature>
</config-file>
<source-file src="src/android/commons-net-2.2.jar" target-dir="libs" framework="true" />
</platform>
</plugin>
假设org.apache.commons.net
目录位于本地 git 存储库中,将其添加到项目中非常简单:
phonegap local plugin add /path/to/your/org.apache.commons.net
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)