如何将原生模块添加到Cordova Android项目?

时间:2017-10-03 23:33:22

标签: android cordova android-gradle android-module cordova-android

我想在Cordova Android项目中添加本机(集成测试)模块。

对于完全本机项目,您只需添加一个新模块,提交并完成它。但对于Cordova,我当然不想搞乱生成的Android项目,因为这些更改可能会在构建等方面丢失。

我通过将模块文件夹置于Cordova Android文件夹之外并将其添加到settings.gradle来获得模块概念的Poof of Concept:

include ':module-androidTest'
project(':module-androidTest').projectDir = new File("../module-tests")

但当然该文件的第1行已经说过了

// GENERATED FILE - DO NOT EDIT

有没有其他方法可以将其他模块添加到Cordova Android项目中?

我研究或思考的一些方法:

  • 我可以用build-extras.gradle以某种方式做到这一点吗? (我不这么认为settings.gradle是构建附加内容和build.gradle之前的几个步骤,对吗?)

  • 旧的StackOverflow问题建议手动编辑GradleBuilder.js文件:https://stackoverflow.com/a/35504783/252627但当然每次我完全生成一个新的Cordova项目时,这都会丢失。不是一个好主意,对吗?

  • 我可以通过Cordova插件以某种方式解决这个问题吗?我知道这些可以加载框架等 - 或许也是一个模块?

1 个答案:

答案 0 :(得分:1)

我认为您正在寻找的内容可以使用自定义插件完成,该插件可以使用如下框架标记扩展基础gradle配置:

<framework src="relative/path/to/your/gradlefile/*.gradle" custom="true" type="gradleReference" />

这就是通常扩展cordova-android项目的方式。