cocos2dx 2.x 安卓工程的创建 Mac下

前端之家收集整理的这篇文章主要介绍了cocos2dx 2.x 安卓工程的创建 Mac下前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

配置环境

来自:http://www.cnblogs.com/mengshu-lbq/p/3435434.html

首先你要有权限修改profile文件

.1 设置etc目录权限everyone可读写,设置profile文件everyone可读写

.2 或者你把profile拷贝出来,在外面修改,然后覆盖回去,用管理员密码覆盖就可以了

进入/etc/profile文件,修改加入这些: (注意,这些目录是肯定和你的不一致,自己去修改对应自己的目录

export ANDROID_SDK_ROOT=/opt/android-sdk-linux
export ANDROID_NDK_ROOT=/opt/android-ndk-r9b
export COCOS2DX_ROOT=/opt/cocos2d-x-2.2
export PATH=$COCOS2DX_ROOT:$ANDROID_NDK_ROOT:$ANDROID_SDK_ROOT:$PATH

3. 然后通过terminal进入cocos2dx的主目录
$ cd ./tools/android-buildsetup.sh
lbq:/opt/cocos2d-x-2.2.3.$ ./tools/android-buildsetup.sh

成功的话会有成功的提示:



后面开始自己总结:

创建工程

找到cocos2dx目录下的Tools的project-creator文件夹,运行create_project.py脚本

提示加上项目名称河包名称以及代码类型,都设置好后,在cocos2dx目录下的project文件夹会生成以项目名称为名字的工程文件


你可以把项目拷贝到任何其他的目录,但是别忘了cocos2dx java部分的代码引用库找不到会报错,一打开项目就一堆红色醒目的错误,那说明库存在问题

这时候很简单,eclipse导入android的工程,找到cocos2dx根目录的cocos2dx子目录(不是根目录)/platform/android/java,把这个目录加到eclipse就好了,然后移除项目内的引用路径


需要真机运行时,需要创建一个虚拟机,并把真机设置为开发模式,此时在run configuration->android->target才能选择launch with a device


eclipse找不到ndk root

遇到的一些错误build_native.sh提示"bash please define NDK_ROOT"

这是ndk的路径没有设置

在第三行后面加上

export NDK_ROOT="/Applications/android/ndk"
就ok了

来自:http://zhanyonhu.blog.163.com/blog/static/16186044201382411181598/


cocos2dx中LabelReader.cpp错误

2.2.5版本cocos2dx编译第一次报错的问题 提示:

LabelReader.cpp 'transform' is not a member of 'std'

找到cocos2dx sdk目录下的
extensions/CocoStudio/Reader/WidgetReader/LabelReader/LabelReader.cpp

在里面加上

#include <algorithm>

完美解决

来自:http://blog.csdn.net/wk3368/article/details/39210121


cocos2dx中的CCApplication 60行错误

CCApplication 60行错误的问题

CCApplication.cpp function:sharedApplication line:60


进入代码中将这句代码CCAssert(sm_pSharedApplication,"");注释掉

当然你还要删掉安卓项目下obj/local/armeabi/下的libcocos2d.a文件,否则还是会出错的


批量导入cpp文件倒android.mk中

来自:http://blog.csdn.net/fu_zk/article/details/12836431

MY_CPP_LIST := $(wildcard $(LOCAL_PATH)/*.cpp)

MY_CPP_LIST += $(wildcard $(LOCAL_PATH)/src/*.cpp)

MY_CPP_LIST += $(wildcard $(LOCAL_PATH)/src/core/*.cpp)

LOCAL_SRC_FILES := $(MY_CPP_LIST:$(LOCAL_PATH)/%=%)


这样避免了每个cpp都写一次的问题,也不怕漏填和错填

最后一句$(MY_CPP_LIST:$(LOCAL_PATH)/%=%)是移除MY_CPP_LIST中所有$(LOCAL_PATH)字符串,cpp不需要此路径


找不到Box2d.h的错误

.在 Application.mk 里面添加下面代码

APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -DCOCOS2D_DEBUG=1

.把

#include "Box2D.h"

改成

#include "Box2d/Box2d.h"

.要搜索所有引用的地方,然后修正,才能通过,否则有可能修复了当前错误地点,但是还是报错的问题

http://www.tuicool.com/articles/maYjuy

http://www.verydemo.com/cm.jsp?c=26&u=cocos2dxBox2dandroid-xiang-mu-bian-yi


ZipUtils找不到的问题

Box2d一样,需要添加路径

修改

#include "ZipUtils.h"

#include "support/zip_support/ZipUtils.h"


尽量只导入cocos2d.h

如果你很多地方直接导入的是cocos2dx的某个类文件,编译时是肯定报错的

把他们都改为

#include "cocos2d.h"

如果不这么做,那你最好去写全每个调用类的路径


平台判断

如果有ios与android的区分代码,多用这个来区分

#if (CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
#elif (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
#endif


makefile的基础知识

http://blog.csdn.net/herecles/article/details/7958370


android运行安装时报错

Installation error: INSTALL_Failed_INSUFFICIENT_STORAGE

只要删除之前安装的apk就好

http://blog.csdn.net/centralperk/article/details/7579962


androidL android 5.0 不支持cocos2dx的背景音乐播放的解决方

5.0新系统导致 SimpleAudioEngine::sharedEngine()->playBackgroundMusic() 无法播放背景音

使用下面的补丁修补cocos2dxmusic.java就好了

https://github.com/Dhilan007/cocos2d-x/commit/76c9accec9b8c3884f9ddec83be44df5d828605b

来源 https://github.com/cocos2d/cocos2d-x/pull/9088


警告extra tokens at end of #include directive

去掉引用后面的;号就好了

http://zhidao.baidu.com/question/399111539.html


警告warning: enumeral mismatch in conditional expression

单位不一致导致的

数值与枚举混用的时候会出现

http://blog.csdn.net/jasonfqw/article/details/5098810


错误Fatal signal 11 (SIGSEGV),code 2,fault addr

直接删掉apk 然后重新安装


错误Cocos2dxSound android.content.res.AssetManager.openAssetFd(Native%20Method)

音效可能会不播放问题,貌似没有音效没播放,暂时放这里

http://discuss.cocos2d-x.org/t/no-sound/737/6


关闭Eclipse的debug开启就自动进入debug模式

preferences > Run/debug > perspective > Open the associated perspective when launching 从其他改为never

http://cc.bingj.com/cache.aspx?q=eclipse+%E7%A6%81%E6%AD%A2%E8%87%AA%E5%8A%A8%E8%BF%9B%E5%85%A5debug%E6%A8%A1%E5%BC%8F&d=4835979937579167&mkt=zh-CN&setlang=zh-CN&w=piZgDfZtDKCXJhG_j01pcQyJm7S0Jgcr

猜你在找的Cocos2d-x相关文章