coocs2dx-lua在XCode开发时lua和资源热更新问题解决办法
2015-05-17 14:36
411 查看
最近由于项目需要发布ios版,所以我转到了mac环境下发布我们的项目。
因为cocos2dx跨平台,所以发布起来倒不是很蛋疼。在开发的过程中发现了一个奇怪的问题,就是每次修改一个lua文件或者资源文件,XCode都必须clean一下再build一下才会生效,然后每次编译的时间都很长,这是比较难以接受的。
于是在网上查了一下发现已经有人提出并解决个问题,之所以会每次都要clean再build的原因是:对于Xcode来说lua本身不是代码而是文本资源,而对于XCode的build 程序来说,每次build资源都是只增式拷贝,所以每次修改资源的时候对于XCode来说都不会被拷贝到编译程序中的。
解决办法是当XCode在build的时候手动拷贝指定资源到编译程序中去。整理下前人方法步骤如下:
1.XCode->项目工程->TARGETS(你的目标项目)->Build Phase
2.Editor -> Add
Build Phase -> Add Run Script Build Phase
3.将下面的shell代码修改下资源目录路径,然后复制粘贴到Run Script下。
或者:
注意:shall中赋值符号前后不能有空格
参考资料:
XCODE调试时强制更新模拟器上的资源文件
确保 Xcode 每次 Build 时都自动更新资源
XCode ios iphone 变态的资源管理
ps:分享一个好用的软件HoRNDIS:mac系统中共享android共享网络,下载地址
因为cocos2dx跨平台,所以发布起来倒不是很蛋疼。在开发的过程中发现了一个奇怪的问题,就是每次修改一个lua文件或者资源文件,XCode都必须clean一下再build一下才会生效,然后每次编译的时间都很长,这是比较难以接受的。
于是在网上查了一下发现已经有人提出并解决个问题,之所以会每次都要clean再build的原因是:对于Xcode来说lua本身不是代码而是文本资源,而对于XCode的build 程序来说,每次build资源都是只增式拷贝,所以每次修改资源的时候对于XCode来说都不会被拷贝到编译程序中的。
解决办法是当XCode在build的时候手动拷贝指定资源到编译程序中去。整理下前人方法步骤如下:
1.XCode->项目工程->TARGETS(你的目标项目)->Build Phase
2.Editor -> Add
Build Phase -> Add Run Script Build Phase
3.将下面的shell代码修改下资源目录路径,然后复制粘贴到Run Script下。
#$TARGET_BUILD_DIR:获取工程生成路径,在Build Settings->Build locations中可以修改,一般为/Users/用户名/Library/Developer/Xcode/DerivedData/项目名-cjzvgkxolvdmwncjlzdgoyapfvrp/Build/Products/Debug-iphonesimulator #$CONTENTS_FOLDER_PATH:项目生成文件,后缀为.app(需要设置显示文件拓展名),一般为工程的TARGETS中生成相应target名.app #_TARGET_BUILD_CONTENTS_PATH:获取生成文件路径 LuaScripr_Path="../../../src" Resource_Path="../../../res" _TARGET_BUILD_CONTENTS_PATH=$TARGET_BUILD_DIR/$CONTENTS_FOLDER_PATH #clean LuaScripr Directory rm -fr $_TARGET_BUILD_CONTENTS_PATH/src/* rm -fr $_TARGET_BUILD_CONTENTS_PATH/src #copy LuaScripr Directory mkdir -p $_TARGET_BUILD_CONTENTS_PATH/src/ cp -RLp $PWD/LuaScripr_Path/* $_TARGET_BUILD_CONTENTS_PATH/src/ #clean Resource Directory rm -fr $_TARGET_BUILD_CONTENTS_PATH/res/* rm -fr $_TARGET_BUILD_CONTENTS_PATH/res #copy Resource Directory mkdir -p $_TARGET_BUILD_CONTENTS_PATH/res/ cp -RLp $PWD/Resource_Path/* $_TARGET_BUILD_CONTENTS_PATH/res/
或者:
_TARGET_BUILD_CONTENTS_PATH=$TARGET_BUILD_DIR/$CONTENTS_FOLDER_PATH echo PWD:$PWD function copyResource() { #clean LuaScripr and Resource Directory rm -fr $_TARGET_BUILD_CONTENTS_PATH/$1/* mkdir -p $_TARGET_BUILD_CONTENTS_PATH/$1/ mkdir -p $_TARGET_BUILD_CONTENTS_PATH/$1/ cp -RLp $PWD/$1/* $_TARGET_BUILD_CONTENTS_PATH/$1/ echo copyResource:$1 completed! } copyResource src; copyResource res;
注意:shall中赋值符号前后不能有空格
参考资料:
XCODE调试时强制更新模拟器上的资源文件
确保 Xcode 每次 Build 时都自动更新资源
XCode ios iphone 变态的资源管理
ps:分享一个好用的软件HoRNDIS:mac系统中共享android共享网络,下载地址
相关文章推荐
- 关于android开发遇到的一些问题的解决办法---间断的更新
- XCode开发中,更新证书后出现“Valid signing identity not found”解决办法
- Android sdk更新过程中出现问题 (连接不上Google的服务资源)解决办法
- 解决 Xcode 5 资源文件更新后不自动复制的问题
- 使用lua更新脚本后,xcode下游戏资源没有更新的问题[quick-cocos2d-x]
- 如何解决xcode里开发cocos2dx修改lua脚本后不刷新的问题
- xcode5下开发, 真机测试缓存问题和解决办法
- 怎样解决xcode里开发cocos2dx改动lua脚本后不刷新的问题
- 解决 Xcode 5 资源文件更新后不自动复制的问题
- 安卓开发中所遇到的一些问题及解决办法,不断更新中
- xcode下真机调试cocos2d-x程序资源不更新的解决办法
- iOS开发 -终端更新Ruby步骤和遇见奇葩问题的解决办法
- IOS开发 Xcode7.3不能提示自定义类名问题解决办法
- 如何解决xcode每次运行不clean就不更新资源文件的问题
- .NETC#下AE二次开发过程中出现的属性表不能更新问题解决办法
- 使用lua更新脚本后,xcode下游戏资源没有更新的问题[quick-cocos2d-x]
- windows 下构建ionic开发环境以及相关问题解决办法
- iOS开发之Xcode的静态分析(Static Code Analysis)与常见内存隐患解决办法
- xcode遇到的问题及解决办法