我正在尝试制作一个简单的cordova android插件,它需要在jar文件中定义的类。我有一个测试项目here,其中包含示例用法&我的插件的简化版。
在我的plugin.xml中,我有这个:
<platform name="android">
<config-file target="res/xml/config.xml" parent="/*">
<feature name="Pebble">
<param name="android-package" value="com.jetboystudio.pebble.PebblePGPlugin"/>
</feature>
</config-file>
<source-file src="src/android/PebblePGPlugin.java" target-dir="src/com/jetboystudio/pebble" />
<source-file src="src/android/libs/pebble_kit.jar" target-dir="libs" />
</platform>
在我的测试项目中,我有pebblekit jar就位(我认为):plugins / com.jetboystudio.pebble.PebblePGPlugin / src / android / libs / pebble_kit.jar
当我&#34; cordova构建&#34;我没有错误,但是当我安装apk文件时,我得到了#34; Class not found&#34;在Chrome设备中检查。我假设这个类无法找到pebble_kit.jar中定义的类之一。此外,它似乎没有将此文件复制到platforms / android。
如果我可以更好地调试(找不到哪个类?)这可能是一个好的开始,如果没有人能够解释为什么这样做不起作用。
答案 0 :(得分:11)
您的plugin.xml
是正确的。
在将插件添加/安装到项目中后,请不要编辑plugin.xml
当您运行cordova构建或准备它不会处理plugin.xml的本机部分时,它只能在cordova插件上进行处理
使用包含 jar 文件的plugin.xml
更新您的插件repo /文件夹,并且您拥有的行是正确的。
然后做
cordova plugin rm
cordova plugin add
cordova build
最终结果验证了cordova构建后/platforms/android/libs/pebble_kit.jar
存在。
答案 1 :(得分:2)
您还可以使用以下方式添加一个jar文件:
<lib-file src="src/android/libs/pebble_kit.jar" />
这会将罐子添加到platforms/android/app/libs/