注意:本文的Cocos2d-x的版本是2.2.3,更高版本可能会略有不同,低版本者不建议参考

首先需要配置XCODE环境

下载Cocos2d-x

然后下载Cocos2d-x的整个源码:http://www.cocos2d-x.org/download 选择2.2.3的版本

下载后解压,建议移动到文稿里

2.2.3的版本开始,Cocos2d-x将不能通过XCODE内置模板创建,而是必须通过脚本创建项目

这里,我的源码路径是:/Users/mac/Documents/Projects/cocos2d-x-2.2.3/,以下所有相同路径都可以根据您自己放置Cocos2d-x源码的位置来替换。

现在利用其自带的脚本,新建一个项目

新建项目

首先终端进入: cd /Users/mac/Documents/Projects/cocos2d-x-2.2.3/tools/project-creator

然后执行脚本:./create_project.py -project MyGame -package com.wangtao.mygame -language cpp

这里的MyGame是项目名称,请根据自己需求改变

这里的com.wangtao.mygame是包名,请根据自己需求改变。改变后的包名将在之后的XCODE和ECLIPSE两个环境中同时生效。

脚本执行完成后,新的项目在这个路径下:/Users/mac/Documents/Projects/cocos2d-x-2.2.3/projects

找到这个项目,进入后寻找proj.ios文件夹找到MyGame.xcodeproj打开就可以进入XCODE开发游戏了。

 Android环境配置

Eclipse for mac 下载地址:http://eclipse.org/downloads/
Android SDK for mac下载地址:http://developer.android.com/sdk/index.html

NDK下载地址:http://developer.android.com/tools/sdk/ndk/index.html

ADT下载地址:http://dl.google.com/android/adt/22.6.2/adt-bundle-mac-x86_64-20140321.zip

请注意下载Mac版本,并匹配您系统是32位还是64位。几个包都比较大,下载速度比较慢,建议使用支持断点续传的工具下载。

配置环境变量

为了让编译器在以后能根据名称简称快速定位到其所在路径,需要将他们的映射关系配置并保存。

打开“终端”,然后输入  pico .bash_profile  回车
然后手动将以下路径输入进去:

export ANDROID_SDK_ROOT=/Users/mac/Documents/Projects/sdk/

export ANDROID_NDK_ROOT=/Users/mac/Documents/Projects/android-ndk-r9d/

export COCOS2DX_ROOT=/Users/mac/Documents/Projects/cocos2d-x-2.2.3/

export NDK_ROOT=/Users/mac/Documents/Projects/android-ndk-r9d/

export PATH=$PATH:$ANDROID_SDK_ROOT

export PATH=$PATH:$ANDROID_NDK_ROOT

注意以上输入过程中,“=/”左右都不能有空格,否则会配置失败

输入完成之后,Control+x  进行保存,然后提示是否保存,输入 y  ,最后回车即可!
配置路径完成之后建议监测一下是否配置正确
检验路径步骤: 关闭你的“终端”,重新打开,如果之前路径配置有问题,那么重新打开的“终端”将出现如下提示:-bash: exoort: command not found    如果没有此类提示,说明路径配置完成。

建立Android项目

进入Eclipse的文件夹,启动Eclipse,新建Project,选择Android Project from Existing Code,点击Browse,选择/Users/mac/Documents/Projects/cocos2d-x-2.2.3/projects下您要导入的游戏项目,进入对应的游戏文件夹后,选择proj.android文件夹,然后点击Open。

项目导入进来后,可以看到assets文件下的资源就是XCODE中对应的资源,以后不需要来回拷贝资源,大大节省项目移植到Android平台的时间。

此外项目自动生成了入口Activity,继承自Cocos2dxActivity。但如果是第一次导入项目,这个库是没有的,需要导入。方法是,再新建一个Project,选择Android Project from Existing Code,点击Browse,选择/Users/mac/Documents/Projects/cocos2d-x-2.2.3/cocos2dx/platform/android文件夹。

在最终编译之前,需要特别注意的是:

1、检查Eclipse中本项目的jni/hello/cpp/main.cpp中的代码,默认情况下,上面inlude了一个“HelloWolrdScene”,如果您的游戏删掉了这个类,那这里也要对应的去掉这个include

2、检查build_native.sh中,在# options下需要添加NDK_ROOT :NDK_ROOT= "/Users/mac/Documents/Projects/android-ndk-r9d"

最终编译和运行

进入终端,根据项目中的build_native.sh位置,直接执行这个编译脚本,如:

/Users/mac/Documents/Projects/cocos2d-x-2.2.3/projects/MyGame/proj.android/build_native.sh

这次编译目的是生成.so文件,并打包到Android的APK中,如果编译成功会看到如下文字

[armeabi] SharedLibrary  : libcocos2dcpp.so

[armeabi] Install        : libcocos2dcpp.so => libs/armeabi/libcocos2dcpp.so

如果编译出错,则会显示对应的错误原因,强烈建议先保证在XCODE中编译通过的前提下,再进行android的.SO编译。

编译通过后,点击项目的根节点,并按下F5键,可以看到项目中多了libs/armeabi/libcocos2dcpp.so。

最后通过Eclipse的RUN功能,就可以直接生成APK了。

权限给予

mac 下终端访问文件出现“Permission Denied”解决方案:

一个文件有3种权限,读、写、可执行,你这个文件没有可执行权限,需要加上可执行权限。

1. 终端下先 cd到该文件的目录下

2. 执行命令 chmod a+x ./文件名

NDK不兼容

在编译过程中,可能遇到这样的错误提示:format not a string literal and no format arguments [-Werror=format-security]

原因:

  android-ndk-r9与Eclipse的版本不兼容问题

方案之一(我搜到的):

  在对应项目的proj.android/jni/Application.mk添加一句话

  APP_CFLAGS += -Wno-error=format-security

爽快的双平台同时开发

推荐在XCODE中进行游戏开发,调试。每一次需要生成安卓APK的时候,先通过终端执行build_native.sh脚本,然后Eclipse的项目根目录点击F5刷新.so后文件后编译打包一气呵成。

唯一麻烦的一点就是iphone和android手机可能需要来回插拔,但这对游戏开发者已经是最高的跨平台开发效率了。

本文由王焘原创,转载请注明原文地址。

Mac系统完美配置Cocos2d-x 2.2.3 的Android+IOS双平台环境的更多相关文章

  1. 在Mac系统上配置Android真机调试环境

    在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...

  2. Mac系统如何配置adb

    在使用mac进行android开发之前,我们一般会安装android studio 或者 eclipse,无论哪一款开发软件,都少不了安装adb(Android Debug Bridge).adb(A ...

  3. 在Mac系统下配置PHP运行环境

    概述 Mac系统对于PHP运行非常友好,我们只需要进行简单的配置便可以开始进行使用,本篇文章将一步一步地介绍Apache.PHP和MySQL的安装与配置,为开始进行开发铺好路 Apache 启动Apa ...

  4. Mac系统中配置Tomcat环境

    第一步:下载Tomcat 下载地址:http://tomcat.apache.org/download-80.cgi 直接下载如图选中的即可 第二步: 下载完成后,解压,随意放入目录.如我就把它放在/ ...

  5. Mac系统下配置JDK环境变量

    第一次用Mac做开发,在网上也搜索了一些环境变量配置的文章,在此总结一下以方便日后使用. 1.打开终端Terminal: 2.进入当前用户主目录,cd ~: 3.临时授权,sudo su: 4.输入密 ...

  6. Mac系统下配置JAVA Maven Ant 环境变量

    Mac 启动加载文件位置(可设置环境变量) ------------------------------------------------------- (1)首先要知道你使用的Mac OS X是什 ...

  7. mac系统mysql配置环境变量(转)

    mac初次安装mysql,输入mysql -u root -p会出现:zsh: command not found: mysql的提示.此时需要配置环境变量. mac版mysql客户端:mysql-5 ...

  8. 转载:mac系统XAMPP配置虚拟主机

    安装完xampp后,想添加一个virsualhost,一直报错.查了半天资料,都是乱说,后来看到了一篇国外的文章,终于弄出来了,整理一下. 第一步,配置本地hosts sudo vi /etc/hos ...

  9. Mac系统下配置Tomcat

    1.下载Tomcat,网址:http://tomcat.apache.org/download-70.cgi: 2.进入终端Terminal,打开配置文件.bash_profile,输入open .b ...

随机推荐

  1. nginx图片处理笔记(http-image-filter-module、lua)

    实验环境:CentOS 6.10 目标:1.使用http-image-filter-module进行图片变换:2.使用lua进行格式转换: 安装EPEL https://fedoraproject.o ...

  2. *2.3.3-加入monitor

    验证平台必须监测DUT的行为,只有知道DUT的输入输出信号变化之后,才能根据这些信号变化来判定DUT的行为是否正确. 验证平台中实现监测DUT行为的组件是monitor.driver负责把transa ...

  3. FocusBI: 微软商业智能教程目录介绍(原创)

    关注微信公众号:FocusBI 查看更多文章:加QQ群:808774277 获取学习资料和一起探讨问题. <商业智能教程>pdf下载地址 链接:https://pan.baidu.com/ ...

  4. springboot主从数据库

    是从springmvc的思路上来做的,主要就是配置主.从DataSource,再继承AbstractRoutingDataSource,重写determineCurrentLookupKey方法,通过 ...

  5. 欢迎来到GIS思考者的博客www.gisthinker.com

    我是一名GIS爱好者,这是我的个人博客,欢迎点击: GIS思考者:www.gisthinker.com

  6. 非常不错的js 屏蔽类加验证类

    1 >屏蔽功能类 1.1 屏蔽键盘所有键 <script language="javascript"><!--function document.onkey ...

  7. C# 之正则表达式运用

    C#正则验证大全 Regex.IsMatch()正则表达式验证 需要引入命名空间 using System.Text.RegularExpressions;    #region 验证文本框输入为数字 ...

  8. nodejs记录1——async函数

    其实手动配置babel环境并不难,记录下步骤: 1.首先npm init创建一个nodejs项目 2.全局安装babel-cli处理工具:npm i babel-cli -g 3.cd到项目下安装ba ...

  9. 看libevent所遇到的英语生词

    libevent – an event notification library The libevent API (libevent应用程序)provides a mechanism(机制) to ...

  10. H5演示文稿快速制作

    详见: http://www.geekfan.net/8107/ 或 http://www.jianshu.com/p/09a3bbb8b362