使用Android Studio进行cocos2d-x开发

转载自:http://vincent-zheng.github.io/2015/06/24/cocos2dx-android-studio/

前言

cocos2d-x进行android时官方使用的是eclipse+ADT+NDK的模式,但是随着Android Studio正式版的推出,越来越多的开发者正开始转变他们的开发工具为Android Studio。

Android Studio相对于eclipse+ADT的优势

  • Android Studio是基于Intellij的IDEA社区版进行开发而成的,而IDEA则被誉为最智能的JAVA开发工具,Android Studio在智能提醒、预览xml布局界面等功能方面相较于eclipse方面是比较优势的。
  • ADT正在被谷歌官方边缘化,谷歌方面已经宣布不再对ADT进行支持开发了,这将意味着很多bug得不到及时的修复、新功能难以添加上去。
  • Android Studio具有更加优秀的用户界面。

使用Android Studio进行cocos2d-x的开发

Android Studio的ndk配置

Android Studio使用ndk十分方便。

  1. 首先需要在local.properties文件中添加上ndk的根目录。以下是我电脑上的配置:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ## This file is automatically generated by Android Studio.
    # Do not modify this file -- YOUR CHANGES WILL BE ERASED!
    #
    # This file should *NOT* be checked into Version Control Systems,
    # as it contains information specific to your local configuration.
    #
    # Location of the SDK. This is only used by Gradle.
    # For customization when using a Version Control System, please read the
    # header note.
    sdk.dir=C\:/Android/android-sdk-windows
    ndk.dir=C\:/Android/android-ndk-r10e
  2. 在gradle的编译脚本,gradle.build中的android中添加以下语句

    1
    2
    3
    4
    5
    sourceSets.main {
    jni.srcDirs = [] // 这里代表的是c++源码的目录,默认不写为src/main/jni下,因为在windows下直接使用gradle进行编译会出错,因为这里将它制空,然后后面用其他脚本进行编译
    jniLibs.srcDir 'src/main/libs' // 生成的.so的目录
    assets.srcDir 'src/main/assets' // assets目录
    }</span><br></pre></td></tr></tbody></table></figure>

完整的编译脚本为:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.1.1'
}
}
apply plugin: 'com.android.application'

repositories {
jcenter()
// flatDir{
// dirs 'libs'
// }
}

android {
compileSdkVersion 22
buildToolsVersion "22.0.1"

defaultConfig {
applicationId "com.vincent.twoplusone.app"
minSdkVersion 14
targetSdkVersion 21
versionCode 1
versionName "1.0"
}

compileOptions {
sourceCompatibility JavaVersion.VERSION_1_6
targetCompatibility JavaVersion.VERSION_1_6
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}

sourceSets.main {
jni.srcDirs = []
jniLibs.srcDir 'src/main/libs'
assets.srcDir 'src/main/assets'
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
// compile(name:'loginModule-release', ext:'aar')
compile project(':loginModule')
compile 'com.android.support:appcompat-v7:22.2.0'
}

至此ndk配置完成。

使用Android Stduio开发cocos2d-x

首先用Android Studio和cocos的脚本分别创建一个新的项目,然后就是将cocos项目中对应的文件拷贝到相应的目录下面。

cocos中的文件 Android Studio项目下的文件(默认根目录为module根目录)
Classes* src\Classes*
Resource* Resource*
proj.android\jni* src\main\jni*
proj.android\assets* src\main\assets*
proj.android\src* src\main\java*
proj.android\res* src\main\res*
proj.android\project.properties src\main\java\project.properties

最后因为Android Studio在window下直接使用ndk进行编译会因为一些全局变量的缺失导致失败,需要使用在src\main 目录下使用以下脚本进行编译(其中一些全局变量需要自行配制):

1
ndk-build NDK_ROOT=%NDK_ROOT% NDK_MODULE_PATH=%NDK_MODULE_PATH% ANDROID_SDK_ROOT=%ANDROID_SDK_ROOT% NDK_TOOLCHAIN_VERSION=4.9

更多相关文章

  1. 一款常用的 Squid 日志分析工具
  2. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  3. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  4. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  5. Android-显示传感器的值
  6. android 用ant打包apk
  7. Android(安卓)Studio在release模式下设置debuggable
  8. Android(安卓)上传文件,头像。流形式
  9. android是如何做DNS解析的

随机推荐

  1. android https之三
  2. [Android]实现Spinner控件
  3. android 设置中添加首选项 通过Intent调
  4. Android(安卓)TextView跑马灯效果
  5. [置顶] Android(安卓)Studio设置Android(
  6. 一张图片覆盖在另一个图片上
  7. Android(安卓)默认应用安装在sd卡中 (>2.2
  8. Android_相对布局的相关属性RalativeLayo
  9. android —— 自定义控件 最简单下拉刷新
  10. Android(安卓)自带的图片资源调用