Cocos2d学习笔记(1)——安装模板及ARC支持
2013-04-08 11:06
711 查看
使用平台Xcode4.6.1+cocos2d 2.0。
打开终端,输入:./Downloads/cocos2d-iphone-2.0/install-templates.sh -f 安装cocos2d的模板;
提示:如果在安装过程中提示拒绝权限,可以打开Finder,按SHIFT+COMMAND+G,然后输入~/Library/Developer/Xcode,删除Templates文件夹,然后再新建一个名为Templates的文件夹即可。
目前版本的install-templates脚本不再支持通过sudo的方式安装,执行上述操作可以让当前账户获取对Templates文件夹的访问权限。
但是cocos2d默认是不支持ARC的,如何能做到既能使用ARC又能使用cocos2d呢?静态库可以解决这一问题,下面介绍一下具体操作步骤。
1. 新建工程,选择cocos2d iOS模板:
2. 输入项目的基本信息:
3. 新建后的项目如下图所示:
4. 点击下方的Add Target按钮,添加静态库,如下图所示:
5. 为新的静态库起一个你喜欢的名字,如下图所示,我给静态库起的名字是Cocos2d Libs:
注意不要选择“Use Automatic Reference Counting”,因为我们将把cocos2d的文件移植到该静态库中,而cocos2d目前并不支持ARC。
6. 添加完静态库后的项目结构如下图所示:
7. 选中Cocos2d Libs和libs,并将这两个文件夹删除,注意此时只是删除引用,而不要把文件彻底删除,因为稍后还会使用到。删除之后的项目结构如下图所示:
8. 选中左侧项目结构的根节点HelloCocos2D,然后选中Targets下方的HelloCocos2D,在Summary选项卡中,滚动到中下方位置可以看到“Linked Frameworks and Libraries”,点击其下方加号,在弹出的窗口中,选中“libCocos2d Libs.a”并点击Add按钮,如下图所示;
9. 选择菜单命令File-Add Files to "HelloCocos2D"…,找到并选中第7步删除的libs文件夹,确认不要勾选Destination的Copy items into destination group's folder(if needed),同时在Add to targets中选择Cocos2d Libs作为目标,如下图所示:
10. 将添加后的libs文件夹拽到HelloCocos2D文件夹的下方,这样就和我们刚才看到的结构差不多了,如下图所示:
11. 在项目属性的Targets下方选中Cocos2d Libs,在搜索框中输入search,然后将Always Search User Paths设置为YES,在User Header Search Paths中输入./**,如下图所示:
12. 在搜索框中输入build,然后将Build Active Architecture Only的Debug修改为No,如下图所示:
说明:如果不修改此选项,虽然可以在模拟器上运行,但是无法在真机上调试;
13. 打开Finder,浏览到项目所在位置,将Cocos2d Libs-Prefix.pch文件从Finder中拖拽至Supporting Files文件夹下,此时需要勾选Destination中的Copy items into destination group's folder(if needed),并在Add to targets中选中Cocos2d Libs作为目标。如下图所示:
说明:引入pch文件之后,就可以将刚刚Xcode生成的Cocos2d Libs彻底删除了。
14. 在项目属性的Targets下方选中Cocos2d Libs,在搜索框中输入prefix,然后将Prefix Header修改为HelloCocos2D/Cocos2d Libs-Prefix.pch,如下图所示:
15. 在项目属性的Targets下方选中Cocos2d Libs,在搜索框中输入ios deployment,然后将iOS Deployment Target由iOS 6.1改为iOS 4.3,如下图所示:
说明:如果不修改此设置,当选择在iOS5.0模拟器上运行时,会报:lazy symbol binding failed: Symbol not found: _objc_setProperty_nonatomic的错误。
16. 选择菜单命令Edit-Refactor-Convert to Objective-C ARC…,在弹出的窗口中选中HelloCocos2D.app(HelloCocos2D),然后单击Check按钮,如下图所示:
17. 后续再出现的对话框直接确认即可。经过上述步骤调整之后的工程结构看起来并没有发生太大的变化,不过此时我们的工程已经支持ARC了。运行效果如下图所示:
OK,搞定收工!
一. 安装
从http://www.cocos2d-iphone.org/download下载并解压缩最新版本的cocos2d,默认情况下会保存在 /Users/XXX/Downloads/cocos2d-iphone-2.0文件夹;打开终端,输入:./Downloads/cocos2d-iphone-2.0/install-templates.sh -f 安装cocos2d的模板;
提示:如果在安装过程中提示拒绝权限,可以打开Finder,按SHIFT+COMMAND+G,然后输入~/Library/Developer/Xcode,删除Templates文件夹,然后再新建一个名为Templates的文件夹即可。
目前版本的install-templates脚本不再支持通过sudo的方式安装,执行上述操作可以让当前账户获取对Templates文件夹的访问权限。
二. ARC支持
从iOS5开始,ARC技术的引用简化了程序员的开发工作,因为我们不再必须去记住一定要去释放每一个已申请的对象,我们可以将更多的注意力专注于程序逻辑的本身。但是cocos2d默认是不支持ARC的,如何能做到既能使用ARC又能使用cocos2d呢?静态库可以解决这一问题,下面介绍一下具体操作步骤。
1. 新建工程,选择cocos2d iOS模板:
2. 输入项目的基本信息:
3. 新建后的项目如下图所示:
4. 点击下方的Add Target按钮,添加静态库,如下图所示:
5. 为新的静态库起一个你喜欢的名字,如下图所示,我给静态库起的名字是Cocos2d Libs:
注意不要选择“Use Automatic Reference Counting”,因为我们将把cocos2d的文件移植到该静态库中,而cocos2d目前并不支持ARC。
6. 添加完静态库后的项目结构如下图所示:
7. 选中Cocos2d Libs和libs,并将这两个文件夹删除,注意此时只是删除引用,而不要把文件彻底删除,因为稍后还会使用到。删除之后的项目结构如下图所示:
8. 选中左侧项目结构的根节点HelloCocos2D,然后选中Targets下方的HelloCocos2D,在Summary选项卡中,滚动到中下方位置可以看到“Linked Frameworks and Libraries”,点击其下方加号,在弹出的窗口中,选中“libCocos2d Libs.a”并点击Add按钮,如下图所示;
9. 选择菜单命令File-Add Files to "HelloCocos2D"…,找到并选中第7步删除的libs文件夹,确认不要勾选Destination的Copy items into destination group's folder(if needed),同时在Add to targets中选择Cocos2d Libs作为目标,如下图所示:
10. 将添加后的libs文件夹拽到HelloCocos2D文件夹的下方,这样就和我们刚才看到的结构差不多了,如下图所示:
11. 在项目属性的Targets下方选中Cocos2d Libs,在搜索框中输入search,然后将Always Search User Paths设置为YES,在User Header Search Paths中输入./**,如下图所示:
12. 在搜索框中输入build,然后将Build Active Architecture Only的Debug修改为No,如下图所示:
说明:如果不修改此选项,虽然可以在模拟器上运行,但是无法在真机上调试;
13. 打开Finder,浏览到项目所在位置,将Cocos2d Libs-Prefix.pch文件从Finder中拖拽至Supporting Files文件夹下,此时需要勾选Destination中的Copy items into destination group's folder(if needed),并在Add to targets中选中Cocos2d Libs作为目标。如下图所示:
说明:引入pch文件之后,就可以将刚刚Xcode生成的Cocos2d Libs彻底删除了。
14. 在项目属性的Targets下方选中Cocos2d Libs,在搜索框中输入prefix,然后将Prefix Header修改为HelloCocos2D/Cocos2d Libs-Prefix.pch,如下图所示:
15. 在项目属性的Targets下方选中Cocos2d Libs,在搜索框中输入ios deployment,然后将iOS Deployment Target由iOS 6.1改为iOS 4.3,如下图所示:
说明:如果不修改此设置,当选择在iOS5.0模拟器上运行时,会报:lazy symbol binding failed: Symbol not found: _objc_setProperty_nonatomic的错误。
16. 选择菜单命令Edit-Refactor-Convert to Objective-C ARC…,在弹出的窗口中选中HelloCocos2D.app(HelloCocos2D),然后单击Check按钮,如下图所示:
17. 后续再出现的对话框直接确认即可。经过上述步骤调整之后的工程结构看起来并没有发生太大的变化,不过此时我们的工程已经支持ARC了。运行效果如下图所示:
OK,搞定收工!
相关文章推荐
- (学习笔记1)Win8+VS 2012安装Cocos2d-x模板
- 【学习笔记-01】cocos2d-x 模板在Xcode中的安装与卸载
- Cocos2d-x学习笔记(二)之 在Win7环境下VS2010中安装最新的cocos2d-x-2.1.4
- Cocos2d-x学习笔记(一)---安装cocos2d-x
- cocos2d-js 学习笔记 --安装调试(2)
- 如何在xcode下面同时安装cocos2d-iphone 和 cocos2d-x模板,其实是因为很喜欢C++的缘故,当时学习的是前者,现在自己摸着石头过河了就(cocos2d-x安装失败 出错)
- cocos2d-x学习笔记(一)——安装篇
- cocos2d-js 学习笔记 --安装调试(1)
- Cocos2d-x学习笔记(一)---安装cocos2d-x
- cocos2d-x学习笔记之cocos2d-x的安装与helloworld测试
- [原创]java WEB学习笔记109:Spring学习---spring对JDBC的支持:使用 JdbcTemplate 查询数据库,简化 JDBC 模板查询,在 JDBC 模板中使用具名参数两种实现
- cocos2d-x学习使用笔记一(从win32开始。。。下载、安装、配置、hello world篇)
- android cocos2d-x for Android安装和学习笔记(请用adt-bundle21.1或以上导入)
- ThinkPHP学习笔记多模板支持和多语言支持
- cocos2d-x学习笔记1:cocos2dx 3.0 安装及项目创建
- 怎样使项目中的cocos2d默认模板支持ARC内存管理
- ThinkPHP学习笔记(十三)多模板支持和多语言支持
- iPhone cocos2D学习笔记二:安装cocos2D环境
- cocos2d-js学习笔记<二> 创建工程
- 五毛的cocos2d-x学习笔记04-触摸点