首先安装 gradle。
1.然后用eclipse导出gradle 配置文件(图1),期间选中自己项目,一直next到最后。期间会显示引用(java)工程(见图2)。
图1
图2
2.导出后的变化有三处,
1)根目录framewors ,
2)framewors/runtime-src/proj.android/
3)framewors/cocos2d-x/cocos/platform/android/java/
这三处目录下多了gradle 的配置文件。
2和3分别是各自的工程配置。
3.然后进入终端进入frameworks 目录下,执行 gradle build,会出现如下错误:
这是gradle 版本不对,打开frameworks 下的build.gradle 文件
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.12.+'
}
}
替换成
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:+'
}
}
4.然后重新执行:gradle build,可能会出现如下错误:(如果没有直接跳过)
根据log 找打java工程下的 lint-results.xml,查看相应错误。或者在java 目录下的build.gradle 添加下方代码,忽略错误和警告:
android {
...
sourceSets{
...
}
...
android {
lintOptions {
abortOnError false
ignoreWarnings true
}
}
}
5.执行完grald build 后,出现 BUILD SUCCESSFUL (如上图)
然后会在proj.android 目录下生成一个build 文件夹,里面outputs/apk/目录下会生成三个文件,直接测试安装后缀为debug.apk 的包,包显示运行错误,崩溃。这是因为libcocos2dlua.so没有加载进来。
在proj.android 目录下 build.gradle 中修改:
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
添加:
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs 'libs'
}
然后重新 gradle build,这样打出来的包就可以了。
其他的操作,比如:签名,批量友盟等,就更改相应的build.gradle 配置就可以了。