1.首先是要解决生成android项目时scr目录缺少包文件的问题
以前一直以来我都是从
cocos2dx\platform\android\java\src
这个目录底下直接把文件粘贴到项目的
proj.android\src
这个底下解决的,后来发现,其实是在
template\android
这个目录下的copy_files.sh脚本里少了一条复制文件的命令,囧,希望以后的版本里少一些这样子的bug,
对新手来说,实在是无从解决起
里面有 COCOSJAVALIB_ROOT=$COCOS2DX_ROOT/cocos2dx/platform/android/java 这么条语句其实说明了路径
,但是没使用,所以我们就应该在 copy_src_and_jni 这个函数中,
添加 cp -rf $COCOSJAVALIB_ROOT/src $APP_DIR/proj.android 这样一句,下回再生成项目时,就不用每次都手动去复制了
2.Android.mk的修改问题
从到2.0版本以后(也就是换成了opengl es 2.0以来),Android.mk的位置也变了,以前是在项目的 Classes 里
现在是在项目的 proj.android\jni 里
然后默认是没有添加box2d支持的,所以除了正常的cpp文件引入外,如果想要加入box2d的支持,就要多更改里面的一些内容
首先找到 LOCAL_WHOLE_STATIC_LIBRARIES ,然后看到后面加了类似cocos2dx_static的吗,空格以后多加上一个 box2d_static
然后看到最后$的添加目录了吗,在最后将 $(call import-module,external/Box2D) 这个box2d的目录添加进去,就完成了,
然后再用Cygwin进行交叉编译的时候,box2d就会也被一起编译进去了
以前一直以来我都是从
cocos2dx\platform\android\java\src
这个目录底下直接把文件粘贴到项目的
proj.android\src
这个底下解决的,后来发现,其实是在
template\android
这个目录下的copy_files.sh脚本里少了一条复制文件的命令,囧,希望以后的版本里少一些这样子的bug,
对新手来说,实在是无从解决起
里面有 COCOSJAVALIB_ROOT=$COCOS2DX_ROOT/cocos2dx/platform/android/java 这么条语句其实说明了路径
,但是没使用,所以我们就应该在 copy_src_and_jni 这个函数中,
添加 cp -rf $COCOSJAVALIB_ROOT/src $APP_DIR/proj.android 这样一句,下回再生成项目时,就不用每次都手动去复制了
2.Android.mk的修改问题
从到2.0版本以后(也就是换成了opengl es 2.0以来),Android.mk的位置也变了,以前是在项目的 Classes 里
现在是在项目的 proj.android\jni 里
然后默认是没有添加box2d支持的,所以除了正常的cpp文件引入外,如果想要加入box2d的支持,就要多更改里面的一些内容
首先找到 LOCAL_WHOLE_STATIC_LIBRARIES ,然后看到后面加了类似cocos2dx_static的吗,空格以后多加上一个 box2d_static
然后看到最后$的添加目录了吗,在最后将 $(call import-module,external/Box2D) 这个box2d的目录添加进去,就完成了,
然后再用Cygwin进行交叉编译的时候,box2d就会也被一起编译进去了
解决Android项目生成时的包文件问题及修改Android.mk

本文介绍了如何解决在生成Android项目时scr目录缺少包文件的问题,通过修改copy_files.sh脚本并添加复制命令,避免了每次生成项目时手动复制文件的繁琐操作。同时,详细解释了Android.mk位置变化以及如何添加box2d支持,包括修改相关配置和进行交叉编译的过程。

被折叠的 条评论
为什么被折叠?



