我正在尝试使用gradle
(以前是ant
)在android上构建cocos2dx c++项目。我想要两个等级的任务:
1) 构建c++和Java。我找到了解决方案
task buildCpp(type: Exec) {
commandLine ... // command
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn buildCpp
}
2) 在没有cpp的情况下构建Java。怎样
注意。有了蚂蚁,我可以定义两个目标:
<!-- Build all -->
<target name="buildAll"
description="build all: ndkBuild -> javac"
depends="setDebugFlagTrue, ndkBuild, buildJavaSigned"/>
<!-- Build Java only -->
<target name="buildJavaSigned"
description="javac"
depends="setDebugFlagFalse, clean, release"/>
我怎么能用gradle做这件事?蚂蚁似乎比渐变更灵活。。
嗯。。。老实说,我认为你可能想要一个更灵活的解决方案。Gradle对NDK的使用并不是最好的,有一些方法可以在不失去使用Gradle的其他好处的情况下为原生构建增加更多的灵活性(例如使用支持的Android IDE,自2015年6月30日起,Android工作室)。
我建议遵循本教程,它将向您展示如何强制渐变使用Android.mk文件。这些文件通过利用模块实现了更大的灵活性,这些模块可以根据您的构建方式进行更改。我完全建议将其他地方的C++库编译成.so文件,这样可以给你更多的喘息和调试问题的空间。
本文档解释了Android.mk文件的各个方面,以便您能够更好地了解您想要如何构建。建筑有很多选择,而且更容易控制。
祝你好运!我希望这能有所帮助。