cocos2dx android环境布置
网上这篇文章不错
http://www.zaojiahua.com/android-platform.html
cocos2dx不同版本有些不一样,本文用的是2.2.1
首先,环境推荐用linux,因为windows要安装Cygwin(为了模拟运行linux命令)
1)下载ADT(它包含了eclipse和所有开发android用的插件)
http://developer.android.com/sdk/index.html
2)下载NDK
https://developer.android.com/tools/sdk/ndk/index.html
3)下载JDK1.6以上
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
安装JDK网上有大把的资料,就不写了
4)安装
将ADT和NDK都解压
打开ADT下面eclipse->eclipse
在Window->Preferences->Android->NDK
的NDKLocation里设置你解压后NDK目录
然后File->import
选择ExistingProjectintoWorkspace,选择cocos2dx项目的proj.android目录,点Finish
注意不要勾选Copyprojectsintoworkspace
5)现在eclipse里面就出现了cocos2dx的这个项目,然后Problems这个view里面应该有几个错误
下面来修正这些错误
a)右键点项目->Properties->android,勾一个Targetname(我选的是Android4.4)
b)然后是JavaBuildPath->Source,点LinkSource,在弹出框里Linkedfolderlocation,选择
这个目录/cocos2dx/platform/android/java/src
c)打开项目目录下面build_native.sh
在前面添加一条NDK_ROOT的目录,如下
NDK_ROOT=/data/programs/android/android-ndk-r9c
d)选择Project->clean,只选择清理SanGuo,点确定
6)运行测试
a)如果是真机,首先真机要打开USB调试(在手机设置->Developeroptions->选中USBdebuggin),然后用USB连接到电脑,在eclipse里面,右键点项目->runas->AndroidApplication,eclipse会首先编译项目,如果编译成功,它就会自动安装到真机里
b)模拟器,在eclipse菜单栏点AndroidVirtualDeviceManager->New
AVDname,输入模拟器名字
Device就是分辨率
Target就是那一个版本的手机
RAM和VMheap可以调大一些
InternalStorage设置大些
勾起UseHostGPU,这很重要,要不运行不了cocos2dx
点确定就创建好了
不要连接真机,在eclipse里面,右键点SanGuo->runas->AndroidApplication,eclipse会首先编译项目,如果编译成功,会打开模拟器运行
7)打包
在项目/bin下面有打的apk包
具体项目发布打包得用右键项目->Androidtools->ExportSignedAndroidApplicationPackage...
这个是签名打包
8)debug
右键properties->c++Build->buildcommand里输入,请自己定议NDK_ROOT
${NDK_ROOT}/ndk-buildNDK_DEBUG=1
在android.mk里include$(BUILD_SHARED_LIBRARY)上面加2行引用cocos2dx包路经,要不会报
NDK_MODULE_PATH找不到
2种方法
1)$(callimport-add-path,/data/programs/cocos2dx/cocos2d-x-cocos2d-x-2.2.1)
$(callimport-add-path,/data/programs/cocos2dx/cocos2d-x-cocos2d-x-2.2.1/cocos2dx/platform/third_party/android/prebuilt)
\
include$(BUILD_SHARED_LIBRARY)
2)
copy[cocos2d-x]/cocos2dxto[ndk-dir]/sources/.
Andmovedirectoriesundercocos2dx/platform/third_party/android/prebuilt/to[ndk-dir]/sources/.
当报下面的错,然后又没有进入debug模式的话,或者断点不起作用,请尝试在启动时sleep几秒,这是由于gdbdebug初始化慢于你的程序造成的
“warning:Couldnotloadsharedlibrarysymbolsfor96libraries,e.g./system/bin/linker.
Usethe"infosharedlibrary"commandtoseethecompletelisting.
Doyouneed"setsolib-search-path"or"setsysroot"?
warning:Unabletofinddynamiclinkerbreakpointfunction.
GDBwillretryeventurally.Meanwhile,itislikely
thatGDBisunabletodebugsharedlibraryinitializers
orresolvependingbreakpointsafterdlopen().
”
${NDK_ROOT}/ndk-buildNDK_DEBUG=1