Mac下Android+NDK+cocos2d-x Native本地调试
2013-12-10 14:10 仙人掌哥 阅读(1206) 评论(0) 收藏 举报进入游戏行业,起手就是Mac,工具链什么的都要从头开始摸索了。接手Android项目原先的编译打包方案:编辑jni里的Android.mk,用cocos2d-x里create-android-project.sh生成模板里的build_native.sh编译jni层。但不好调试,只用CCLog太不方便了,至于模板一并提供的ndkgdb.sh我就呵呵了。为了以后的维护,先配置可调试jni层的工具链吧。
在此记录一下配置工具链步骤。
步骤1:Android官网下载sdk http://developer.android.com/sdk/index.html自带各种插件
解压到~/Document/dev_tools文件夹
步骤2: Android官网下载ndk http://developer.android.com/tools/sdk/ndk/index.html
解压到~/Document/dev_tools/adt-bundle-mac/文件夹
步骤3:配置一下环境 我的~/.bash_profile,重启shell
export ANDROID_SDK_ROOT=/Users/oc12/Documents/dev_tools/adt-bundle-mac/sdk export NDK_ROOT=/Users/oc12/Documents/dev_tools/adt-bundle-mac/android-ndk-r9b export COCOS2DX_ROOT=/Users/oc12/Documents/dev_tools/2dx_v2.1.0/cocos2dx2.1.0 export PATH=$PATH:$ANDROID_SDK_ROOT export PATH=$PATH:$NDK_ROOT export PATH=$PATH:$COCOS2DX_ROOT export PATH=$PATH:/Users/oc12/Documents/dev_tools/adt-bundle-mac/sdk/build-tools
步骤4:启动~/Document/dev_tools/adt-bundle-mac/eclipse/Eclipse.app
点击windows-》Android SDK Manager下载Package API 9
点击ADT-》Reference-》Android-》NDK页面,点击Browse设置NDK路径
步骤5:安装插件cdt,这里下载的sdk自带,跳过
这样工具基本准备好了,接下来改造工程,设工程文件夹路径PROJECT_PATH
为了让编译主体Classes入Eclipse法眼,将Classes放入${PROJECT_PATH}/jni文件夹,自然makefile文件${PROJECT_PATH}/jni/Android.mk里
LOCAL_SRC_FILES和LOCAL_C_INCLUDES要改写,稍微改一下脚本list.sh为list_subdirs.sh用于设置include路径
#!/bin/bash
#append_str=' \'
list_alldir()
{
echo $1
for file in $1/*
do
if [ -d $file ]; then
list_alldir $file
fi
done
}
if [ $# -gt 0 ]; then
list_alldir "$1"
else
list_alldir "."
fi
${PROJECT_PATH}/jni运行list.sh结果用于设置LOCAL_SRC_FILES,运行list_subdirs.sh用于设置LOCAL_C_INCLUDES
Eclipse里导入工程,转为native项目
进入项目-》Properties-》C/C++ Build页面,点击Manager Configurations-》New一个新编译配置debug
将页面里Build command改为ndk-build NDK_DEBUG=1
设工程对应的cocos2d-x源文件路径COCOS2DX_ROOT,修改${COCOS2DX_ROOT}/cocos2dx/Android.mk
在里面添加以下几句
修改AndroidManifest.xml的Application页面,设置Debuggable为true
设置当前编译配置为debug并Build All

编译完成,工程-》Debug as-》Android Native Application
最后弹出对话框
一切ok
浙公网安备 33010602011771号