Mac 上编译cocos2d-x 2.14 android项目个人记录

1.下载ADT,SDK

http://developer.android.com/sdk/index.html  

进入上面的网址 有一个醒目的蓝方块,Download the SDK,下载下来

2.下载NDK

进入下面的页面,选择适合自己系统的NDK下载

http://developer.android.com/tools/sdk/ndk/index.html

3.下载Android API

打开eclipse ,之后找到 window--》Android SDK Manager,下载需要的api

无法更新下载列表的看这个博文

http://blog.csdn.net/farsa/article/details/9948005

4.设置环境变量

在控制台输入 pico ~/.bash_profile ,添加如下内容

export COCOS2DX_ROOT=/Users/mac/Documents/cocos2d-x-2.1.4 export NDK_ROOT=/Users/mac/Documents/adt-bundle-mac/android-ndk-r9 export ANDROID_NDK_ROOT=/Users/mac/Documents/adt-bundle-mac/android-ndk-r9 export ANDROID_SDK_ROOT=/Users/mac/Documents/adt-bundle-mac/sdk export PATH=$ANDROID_NDK_ROOT:$PATHexport PATH=$ANDROID_SDK_ROOT:$PATH

加入上面的命令之后,好像很多命令都消失了,再加入下面的命令就行了

export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:$PATH

5.创建android 工程

终端进入/Users/mac/Documents/cocos2d-x-2.1.4之后输入 create-android-project.sh

之后填写一些东西

Input package path. For example: org.cocos2dx.example

填写包名

input target id:

填写api编号

input your project name:

工程名


好了这就可以了,进入/Users/mac/Documents/cocos2d-x-2.1.4就可以看到我们生产的文件夹了,我建的项目名字叫LinkGame,文件夹也是LinkGame


6.编译项目

终端进入我们Linkgame文件夹,中得 proj.android 文件夹

输入 build_native.sh

会出现一大堆的东西,等待一会。而且还有可以出现一些错误,终端中有错误提示,提示你错误在哪一行,那个位置,根据编译的错误提示一步步的排查错误。


7. eclipse 

打开eclipse,选择 OPen->other->android Project form existing code

看图操作






按照上面的弄完了之后,会有几处错误。

根据网上的操作一下就可以了

有两个地方因为2dx版本的升级,被坑了几次,要注意。
1,在生成高版本sdk的框架的时候,AndroidManifest.xml里的icon图片名称是icon,但有时,通过模板创建的工程,却把  ic_launcher.png文件copy过来了了,两个解决方案,a,把icon.png这个图片copy进去资源文件夹下。b,用文本编辑器打开AndroidManifest.xml文件,把第9行中的“icon”替换成"ic_launcher”。

2,在2.x版本后,没有自动把cocos2d-x的java文件包含到工程中,需要在eclipse的工程中添加这个路径。右键ljtest1工程,选择  BuildPath->Link Source,弹出窗口的第一个对话框选择 cocos2d-x 安装目录下的  $COCOS2DX_ROOT/cocos2dx/platform/java/src 目录,第二个对话框“Folder  name"会自动填写上src,这个与项目中的src目录名冲突了,改名就可以了,这里填写的是cocos2dx图片截图时写错了,写成了org-cocos2dx,自动忽视吧)。

8.模拟器

cocos2d-x 的高版本再模拟器上运行不了,需要在真机上跑才行。

9.ios上自己编写的代码移植到Android

将自己写的代码,xcode工程中的class文件家中的代码 替换android工程下得class文件中,资源文件也是从xcode工程中的RESOURCEs 替换android下得,
之后注意文件引用问题


如上图,要想在helloworldscene.h 文件用引用MatrixMap.h文件,需要写上完全路径,一定要这样写:
#include "../MatrixMap/MatrixMap.h"
否者会说找不到文件

之后打开android工程下得proj.android文件夹,打开jin文件夹,用记事本打开android.km文件
找到LOCAL_SRC_FILES := 函数,将自己写的类加进去,比如我要加上图的一些类,android.mk文件我就需要这样写

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := game_shared

LOCAL_MODULE_FILENAME := libgame

LOCAL_SRC_FILES := hellocpp/main.cpp \
                   ../../Classes/AppDelegate.cpp \
                   ../../Classes/HelloWorldScene.cpp \
                   ../../Classes/BaseImage/BaseImage.cpp \
                   ../../Classes/GameLayer/GameLayer.cpp \
                   ../../Classes/mrand/mrand.cpp \
                   ../../Classes/MatrixMap/MatrixMap.cpp

                   
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes                   

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static cocosdenshion_static cocos_extension_static
            
include $(BUILD_SHARED_LIBRARY)

$(call import-module,CocosDenshion/android) \
$(call import-module,cocos2dx) \
$(call import-module,extensions)


改好之后,就再cd 目录 -----> build-navtive.sh ---> 进入eclipse clean一下,编辑一下,就可以了。






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值