Cordova 插件包括 Android 库 (Gradle)

2024-05-10

我想包括这个 Androidlibrary https://github.com/50ButtonsEach/fliclib-android在 Cordova 插件中。

该库本身由 Gradle 管理,如 Github 链接所示。图书馆的开发者只提供guide https://flic.io/partners/developers/android-tutorial如何在 Android Studio 项目中使用它,但我想为这个库创建 Cordova 插件包装器,所以我想将它包含在插件中。

我的插件具有以下结构:

-root
   -plugin.xml
   -lib
     -fliclib-android (this is a cloned library from the github link)
   -src
     -android
       -MyPlugin.java
   -www
     -MyPlugin.js

在plugin.xml 里面我有:

...
<js-module src="www/MyPlugin.js" name="MyPlugin">
    <clobbers target="MyPlugin" />
</js-module>

<!-- android -->
<platform name="android">
    <config-file target="res/xml/config.xml" parent="/*">
        <feature name="MyPlugin">
            <param name="android-package" value="com.mypackage.cordova.MyPlugin"/>
        </feature>
    </config-file>

    <source-file src="src/android/MyPlugin.java" target-dir="src/com/mypackage/cordova" />
    <framework src="lib/fliclib-android/build.gradle" custom="true" type="gradleReference" />

</platform>
...

我也尝试过:

<framework src="lib/fliclib-android/fliclib/build.gradle" custom="true" type="gradleReference" />
<framework src="lib/fliclib-android/" custom="true" />
<framework src="lib/fliclib-android/fliclib/src/main/" custom="true" />

... 我也尝试在里面创建我自己的 Gradle 文件lib/fliclib-android/fliclib/src/main。到目前为止还没有运气。当我尝试运行cordova build过程中,我通常会遇到一堆错误,表明没有加载库中的类/符号。

是否有可能包括这样的项目?如果我能从 Github 引用它那就太好了,但在文档中我没有找到这样的选项。 或者我必须创建一个aar文件?并加载那个?我还没有尝试过这个选项,但我只想在最后的情况下尝试。

谢谢你!


我采用了不同的方法。有趣的是,我开发了完全相同的插件,但我没有找到你的项目!

我的方法是在我的项目中添加自定义 build.gradle 文件。在plugin.xml中使用framework标签来指定build.gradle位置:

<!-- android -->
<platform name="android">
    <framework src="src/android/build.gradle" custom="true" type="gradleReference" />
</platform>

那么build.gradle内容如下:

repositories {
    maven { url "https://jitpack.io" }
}

dependencies {
    compile 'com.github.50ButtonsEach:fliclib-android:ec1cdc3fbe'
}

它使用 Jitpack 来获取依赖项。它在 Cordova 上运行良好,但我在 PhoneGap Build 云解决方案中构建时仍然遇到问题。

这是我的插件,iOS 支持即将推出:

https://github.com/jguix/Cordova-Flic https://github.com/jguix/Cordova-Flic

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cordova 插件包括 Android 库 (Gradle) 的相关文章

随机推荐