2015-06-26 84 views
3

我試圖建立使用gradle Android上的cocos2dx C++項目(以前是ant)。 我想有兩個gradle這個任務:gradle這個Android的NDK編譯

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 ..

回答

1

嗯...我想你可能想要一個更靈活的解決方案,說實話。 Gradle對NDK的使用並不是最好的,並且有許多方法可以爲本地構建增加更多的靈活性,而不會失去使用gradle的其他好處(例如,截至2015年6月30日,Android Studio使用受支持的IDE for Android)。

我建議以下this tutorial,它會告訴你如何強制gradle這個使用的Android.mk文件。這些文件通過使用模塊可以根據您需要構建的方式進行更改,從而提供更大的靈活性。我完全建議將其他地方的C++庫編譯到.so文件中,這樣可以給你更多的空間來呼吸和調試問題。

This document解釋的Android.mk文件的各個方面,這樣就可以更好地瞭解您要如何建立。有許多建築選擇,而且更容易控制。

祝你好運!我希望這有幫助。