cocos2dx版本:cocos2d-2.1beta3-x-2.1.0
使用cocos2dx自带脚本:create-android-project.sh新建项目:HelloWorld,包名:com.yc.helloworld,进入HelloWorld/proj.android/jni目录,运行ndk-build命令编译本地文件生成so文件,就可以在android项目中调用本地函数。
但是这个版本的cocos2dx建立的项目有bug,缺少将cocos2dx/platform/android/src/org目录拷贝到HelloWorld/proj.android/src目录下的步骤,造成android项目无法正常编译。
解决办法:
打开文件/template/android/copy_files.sh,添加函数:
#copy lib directory to project
copy_lib(){
if [ -d $APP_DIR/proj.android/src ]; then
echo "project lib path exists"
else
echo "project lib path not exists, make it"
mkdir -p $APP_DIR/proj.android/src
fi
cp -r $COCOS2DX_ROOT/cocos2dx/platform/android/java/src/org $APP_DIR/proj.android/src/
}
使用cocos2dx自带脚本:create-android-project.sh新建项目:HelloWorld,包名:com.yc.helloworld,进入HelloWorld/proj.android/jni目录,运行ndk-build命令编译本地文件生成so文件,就可以在android项目中调用本地函数。
但是这个版本的cocos2dx建立的项目有bug,缺少将cocos2dx/platform/android/src/org目录拷贝到HelloWorld/proj.android/src目录下的步骤,造成android项目无法正常编译。
解决办法:
打开文件/template/android/copy_files.sh,添加函数:
#copy lib directory to project
copy_lib(){
if [ -d $APP_DIR/proj.android/src ]; then
echo "project lib path exists"
else
echo "project lib path not exists, make it"
mkdir -p $APP_DIR/proj.android/src
fi
cp -r $COCOS2DX_ROOT/cocos2dx/platform/android/java/src/org $APP_DIR/proj.android/src/
}
copy_lib
重新生成的项目不再产生类似问题,已经生成的项目手动将cocos2dx/platform/android/src/org目录拷贝到HelloWorld/proj.android/src,问题解决。