1: 新项目创建

  1.下载最新Python,安装

  2.解压引擎包

  3.运行终端,切换到引擎目录(直接cd拖动文件夹到光标即可得到路径)

  4.按照文档例子:

    $ cd cocos2d-x
    $ ./setup.py
    $ source FILE_TO_SAVE_SYSTEM_VARIABLE
    $ cocos new MyGame -p com.your_company.mygame -l cpp -d NEW_PROJECTS_DIR
    $ cd NEW_PROJECTS_DIR/MyGame

    如果需要安卓平台的话,可以按照cocos IDE的说明文档下载需要的第三方支持,否则一路否即可.

2: 平台不同,项目的退出方式不同

  阅读例子代码可以发现,在主动退出的时候,会在end()后面区别平台,如果在IOS平台下要主动调用exit(0),否则退出就会崩溃,在View释放后仍然会有针对该指针的调用.

  如果需要在程序退出的时候释放自己的对象,那么在IOS平台下,就要在exit之前释放掉所有的数据.

3: Plugin的使用

  cocos自带了对广告,微博等常用的收益,推广渠道进行了插件化封装,提供了HelloPlugin的例子,但是新创建的项目中并没有加入,如果在自己的游戏中不想自己混编,那么直接使用Plugin模块即可,导入方法:

  1. Add Files ----> Create folder ref: 注意这里是创建了一个引用,另一个是全拷贝(很蛋疼),直接添加一个项目文件即可,不要全文件夹添加

  2. 以广告为例,比如我们要添加admob和flurry,那么需要添加三个库:PluginFlurry,PluginAdmob,PluginProtocol.

  3. 进行库链接,PROJECT---TARGET---BUILDPHASE---LINK下面加入这三个库文件

  4. 加入广告库依赖的几个framework插件,分别是UIKit,AdSupport,StoreKit.

  5. 最重要的一点,在工程的编译设置中,要在link---other linker中加上-ObjC,否则无法实例化广告对象!

4: 蓝色和黄色文件夹:

  1. 黄色的为组,编译相关

  2: 蓝色的为文件,资源相关,打包会打进去.Resource中的文件夹都应该是蓝色的.

5: 资源不能及时更新的问题:

  XCODE调试的时候会出现资源修改,没有同步到模拟器的情况,解决方法(XCODE5.1.1):

    Build Settings ---- Build Options --- Scan All Source Files for include --- YES

6: 如何多语言支持

  1. 右击项目->创建新文件->IOS Resource类型的string文件,命名为InfoPlist
  2. 点击文件,右边描述栏中的Localizations里选择一个,然后复选框全选
  3. 在PROJECT的Info-->Localizations中添加其他支持的语言类型
  4. 这时InfoPlist.string已经变成了下拉式的,每种语言有一个.string文件
  5. 每个文件中加入:CFBundleDisplayName ="程序名字";
  6. 点击info.plist,调整里面的默认语言localization native development region
  7. 在条目上右击,选择show raw key value可以查看这些名字对应的关键字.

7: 发布游戏细则

  1. 登录GameCenter的证书,添加一个IOS Provisioning Profiles证书,下载到桌面,这个在打包的时候用到.
  2. 在XCODE中Product-->Scheme-->Edit Scheme,确认Archive的配置为Release.
  3. 在项目的IOS Target配置中,将BuildSetting->CodeSigning->Release设置为IOS Distribution,Provisioning profile保持None,这个在归档的时候会选择.
  4. 使用XCODE中的Product-->Archive生成文档,选择好证书后,不要选择第一项直接上传AppStore,那个没有进度显示,上传等死人.选择第二项,生成ipa文件,改名存在桌面上(归档保留下,这个以后留着查崩溃).
  5. 使用Application Loader进行上传,有进度和当前活动显示,比较直观,不用因为一个错误等待一晚上.
  6. 验证那里一般不需要多久的时间,等待超过20分钟建议你检查一下(我的WIFI等待4分钟而已),先检查一下上面的2和3,这两个坑一定要提前填平,如果还有问题,度娘吧~我也没遇到.
  7. 归档很慢,提前看一下文档,特别是plist的配置规范,一定要按照要求,比如版本格式最多三个整形,你如果多了(我就用了4个,1.0.0.1,悲剧了一次),中间.分割.
  8. 过了验证没有错误,就进入了上传阶段,慢的会显示TCP/UDP检测,不要管,只要你网通着,睡觉吧,会好的.
  9. 结束,然后等待审核吧~

[cocos2dx 3.0 + xcode]疑难点记录的更多相关文章

  1. cocos2d-x 3.0 事件分发机制

    在cocos2d-x 3.0中一共有五个事件监听器: 触摸事件(EventListenerTouch) 键盘响应事件 (EventListenerKeyboard) 加速器记录事件(EventList ...

  2. Cocos2d-x 3.0 事件系统【转】

    事件系统,是一个软件的核心组成部分.从小处讲它是应用程序内部各模块交互的设计模式,从大处讲,它是软件架构的组成模块.在现代软件开发中,操作系统通常通过一些预定义的事件,告知应用程序发生的一些事情如用户 ...

  3. cocos2dx 3.0 触摸机制

    在cocos2dx 3.0版本号中,废弃了以往2.x版本号的写法,我们先来看一下Layer.h中的一段代码 /* Callback function should not be deprecated, ...

  4. cocos2d-x 3.0 开发(一) Hello_New_World

    1.Previous On 2dx     2dx 的3.0版本是个与以往不同的版本.变化比2dx从1.x 到2.x的变化还要大不少.具体的新功能可以参见:CocoaChina大会见闻——cocos2 ...

  5. Cocos2d-x 3.0心得(01)-图片载入与混合模式

    近期開始用cocos2dx 3.0做东西,略有心(cao)得(dian),略微作下记录吧. v3.0相对v2.2来说,最引人注意的,应该是对触摸层级的优化.和lambda回调函数的引入(嗯嗯.不枉我改 ...

  6. 升级到cocos2d-x 2.0.2代码差异

    来自:http://www.cnblogs.com/TopWin/archive/2012/09/12/2682042.html 近期看cocos2d-x 2.0.2公布后升级了一下.升级后发现又出现 ...

  7. 8、Cocos2dx 3.0三,找一个小游戏开发3.0存储器管理的版本号

    重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27693365 复杂的内存管理 移动设备上的硬件资源十 ...

  8. 14、Cocos2dx 3.0三,找一个小游戏开发Scene and Layer:游戏梦想

    发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/30474393 Scene :场景 了解了Director ...

  9. Cocos2d-x 3.0正式版及android环境搭建

    开发环境是:mac + xcode + eclipse ,在win以下的环境和这个都是一样的,唯一不一样的就是环境变量的配置. 以下主要介绍cocos2d-x环境的设置以及android的环境搭建 1 ...

随机推荐

  1. jsp - 引用 jar包.

    在jsp中使用不同的方式引用jar,准备的工作也不同.我接触过的有两种:1)直接在jsp页面中引用;2)在src下的java类中引用,然后在jsp中调用java类. 1)直接引用:可以将jar包丢到W ...

  2. SVM(支持向量机)算法

    第一步.初步了解SVM 1.0.什么是支持向量机SVM 要明白什么是SVM,便得从分类说起. 分类作为数据挖掘领域中一项非常重要的任务,它的目的是学会一个分类函数或分类模型(或者叫做分类器),而支持向 ...

  3. 一个简单的Hibernate工具类HibernateUtil

    HibernateUtil package com.wj.app.util; import org.hibernate.Session; import org.hibernate.SessionFac ...

  4. angularJs 页面筛选标签小功能

    页面html: <div class="bar bar-calm bar-header"> <div class="title">新闻分 ...

  5. hibernate面试笔记

    Hibernate使用Java 反射机制 而不是字节码增强程序来实现透明性 如果JDBC代码写的完美,优化做好,那么JDBC效率是最高的.但是,实际开发中非常不现实,对程序员要求太高.一般情况下,hi ...

  6. 使用jQuery播放/暂停 HTML5视频

    文章来自:http://blog.okbase.net/jquery2000/archive/4485.html 我尝试用jQuery控制HTML5视频,两个视频分别在两个tab中,我希望点中tab后 ...

  7. Spring MVC源码分析(续)——请求处理

    转自:http://blog.csdn.net/shi1122/article/details/8041017 (转移位置了,时光隧道:http://www.jmatrix.org/spring/50 ...

  8. 高性能页面加载技术(流水线加载)BigPipe的C#简单实现(附源码)

    一,BigPipe简介 BigPipe是一个重新设计的基础动态网页服务体系.大体思路是,分解网页成叫做Pagelets的小块,然后通过Web服务器和浏览器建立管道并管理他们在不同阶段的运行.这是类似于 ...

  9. 【Java】java基本知识

    1.int与Integer的区别 int是基本数据类型,Integer是一个引用数据类型. e.g: int num = 100; // 不是对象 Integer i = 100; // 是对象 // ...

  10. call和apply还有bind

    有图有真相 function myfun1(){ //这是私有属性 var private1 = "这是私有属性1"; var privateMethod = function() ...