Cocos2d-x版本升级

转自:http://blog.sina.com.cn/s/blog_7895ec0201015fr0.html

WIN下的升级很简单只要重新运行次就好了。

现在主要看MAC下的升级:
首先说一下升级Xcode的模板。就是把~/Library/Developer/Xcode/Templates的cocos2d-x删掉,然后运行cocos2d-x根目录下的install-templates-xcode.sh
 
    第一步:下载cocos2d-X的引擎包,上面已经给出地址了;

第二步:下载完成之后将其放置到了Mac系统中;(点击Finder-点击左侧的“文稿”);

第三步:启动终端;(点击Finder-前往-实用工具-终端)

第四步:先利用命令进入当前的 “cd documents” 进入Documents文件夹,继续进入文件夹命令:“cd cocos2d-1.0.1-x-0.9.2”,然后“sudo ./install-templates-xcode.sh”命令开始执行安装命令,这时候

 
然后说一下android的环境(Mac/ Linux)。主要看下一几个脚本文件。
 
1. cocos2d-x根目录下的create-android-project.sh脚本
 
        这个脚本需要sdk和ndk的路径。但是可以不改这个脚本,因为它会去取全局环境变量,所以只需要在bash_profile中增加环境变量
 
 
[cpp] 
export ANDROID_SDK_ROOT=~/workspace/android-sdk-macosx  
export ANDROID_NDK_ROOT=~/workspace/android-ndk-r8b  
export COCOS2DX_ROOT=~/workspace/cocos2d-x  
export NDK_ROOT=~/workspace/android-ndk-r8b  
export PATH=$PATH:$ANDROID_SDK_ROOT  
export PATH=$PATH:$ANDROID_NDK_ROOT  
 
export ANDROID_SDK_ROOT=~/workspace/android-sdk-macosx
export ANDROID_NDK_ROOT=~/workspace/android-ndk-r8b
export COCOS2DX_ROOT=~/workspace/cocos2d-x
export NDK_ROOT=~/workspace/android-ndk-r8b
export PATH=$PATH:$ANDROID_SDK_ROOT
export PATH=$PATH:$ANDROID_NDK_ROOT设为自己的路径即可
 
这个脚本主要做了两件事
 
1. 创建一个android工程 就是调的android.sdk/tools/下的android命令,具体可以自己看谷歌文档
 
2. 调用template/android/下的copy_files.sh脚本来拷贝文件,并对工程进行一些修改,比如小改AndroidManifest.xml。
 
 
 
 
好了 ,看一下copy_files.sh这个脚本,就是一系列的copy,比如拷贝资源文件,java文件,修改AndoirdManifest.xml。
 
 
 
 
主要工作的脚本就是这两个。问题来了
 
之前用的2.0.1的版本,在根目录下有个HelloWorld。运行create-android-project.sh脚本创建一个新工程,它的初始java文件 jni文件,资源文件都是拷贝自这个HelloWorld工程。
 
然后2.1.0的版本有一些改动。2.1.0版将helloworld 和tests及一些Lua,javascript的demo都放在了samples目录下。\
 
在2.1.0版的根目录下运行create-android-project.sh生成新工程会出现问题,AndoridManifest.xml是个空文件,不能用ant编译。
 
我通过查看它的脚本,发现copy_files.sh有惊喜
 
 
[cpp] 
HELLOWORLD_ROOT=$COCOS2DX_ROOT/samples/HelloCpp  
 
HELLOWORLD_ROOT=$COCOS2DX_ROOT/samples/HelloCpp这个是定义的HelloWorld的路径,这个路径不对,少个Cpp。所以这个需要改为如下:
 
 
[cpp]  
HELLOWORLD_ROOT=$COCOS2DX_ROOT/samples/Cpp/HelloCpp  
 
HELLOWORLD_ROOT=$COCOS2DX_ROOT/samples/Cpp/HelloCpp所以拷贝的时候根本找不到helloworld的目录,嘿嘿。
 
再看copy_src_and_jni()函数,它拷贝了HellWorld目录的src和jni文件。这个脚本和2.0.1版本有一点区别。2.0.1是先调用copy_src_and_jni()函数拷贝src和jni目录,然后调用copy_library_src()拷贝cocos2dx/platform/android/java/src_common/下的java文件。而2.1.0没有copy_library_src()函数,就是没有拷贝platform下的java文件。它是怎么做的呢。
 
在create-android-project.sh中有一行
 
[cpp] 
$ANDROID_SDK_ROOT_LOCAL/tools/android update project -l ../../cocos2dx/platform/android/java -p $PROJECT_DIR/         proj.android  
 
$ANDROID_SDK_ROOT_LOCAL/tools/android update project -l ../../cocos2dx/platform/android/java -p $PROJECT_DIR/         proj.android它是把platform下的java文件作为新工程的库来搞的。所以如果用eclipse的话同样可以把platform下的java做成一个库工程。但我试过在命令行,用ant编译不过。我不知道是不是它updata project后生成的build.xml问题,个人比较菜,没搞定,求高手指教。
 
于是我还是把他改成跟2.0.1一样的方式了。如下
 
1.注释掉上面那句,即在行首加一个#
 
2.修改copy_files.sh脚本的HELLOWORLD_ROOT路径,如下
 
\
 
3.修改copy_files.sh脚本。
 
     在cop_src_and_jni()函数中加一行,如图
 
 

\

打完,收工。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值