cocos2dx Android 环境搭建 以及 ndk调试
最近在学习cocos2dx,真的很强大,使我们更专注于游戏趣味,免去了繁琐的底层框架代码。
cocos2dx的最强大之处当然在于跨平台。跨平台首选当然是Android,好记性不如烂笔头,记下本文分享给大家。
这里认为我们已经有Android开发环境了,在此基础上配置cocos2dx,没有基础Android开发环境的可以自己谷歌一下。
1、下载完cocos2dx2.2.2 之后 还需要安装Python和ndk(http://developer.android.com/tools/sdk/ndk/index.html),使用官方的脚本建立新的项目。在cocos2d-x-2.2.2的目录中进入到\tools\project-creator目录下,按住shift右击,选择在当前位置打开命令窗口。
运行 python create_project.py -project HelloWorld -package com.cocos2d-x.org -language cpp
其中HelloWorld为工程名称,com.cocos2d-x.org为我为android版本取的包标识名,cpp为开发语言。
之后在cocos2d-x-2.2.2\projects目录下可以看到新建的项目。
好开心,所有平台的解决方案都出来了。
PS:所有新建的Cpp以及.h默认都要放到Classes文件夹中。
2、导入生成的Android项目
再导入Cocos2dx的类库
在项目中引用libcocos2dx
3、我们先修改项目jni中的Android.mk
在最后边加上红色的2句,并且在$(call import-module,cocos2dx)之前:
$(call import-add-path, E:/android/cocos2d-x-2.2.2)
$(call import-add-path, E:/android/cocos2d-x-2.2.2/cocos2dx/platform/third_party/android/prebuilt)
$(call import-module,cocos2dx)
PS:文件夹路径要填写自己cocos2dx的路径,
LOCAL_SRC_FILES := hellocpp/main.cpp \
../../Classes/AppDelegate.cpp \
../../Classes/HelloWorldScene.cpp
改为
FILE_LIST := hellocpp/main.cpp
FILE_LIST += $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp)
LOCAL_SRC_FILES := hellocpp/main.cpp
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
这样可以免去手动输入引用CPP的麻烦。
再修改jni中的Application.mk
在最后面添加环境变量(你的cocos2d-x-2.2.2的位置):
NDK_MODULE_PATH:=E:/android/cocos2d-x-2.2.2;E:/android/cocos2d-x-2.2.2/cocos2dx/platform/third_party/android/prebuilt
4、将步骤1中的Resources文件夹中的所有内容拷贝到项目的assets中。
5、在eclipse的window-》preferences菜单下配置NDK的安装路径为你放置NDK的路径如D:\Android\android-ndk-r9c
6、右键项目-》properties-》C/C++ Build 修改Build command为 例如:D:\Android\android-ndk-r9c\ndk-build.cmd
7、右键项目-》properties-》C/C++ Build-》Environment中新增环境变量NDK_MODULE_PATH,值为步骤3中的值。
8、编译运行。
调试其实很简单,但是如果没有设置,打开CPP会报许多错,但是编译是通过的。
1、首先确定引用的文件夹路径是否正确

2、在能够编译通过的情况下,打开其中任意一个CPP应该会报一大堆错误,不用怕,不用理会,因为编译没有任何问题。
3、右键项目-》properties-》C/C++ General-》Code Analysis-》

4、报什么错,我们就去掉检测。
5、再看看Cpp应该不会报错了,右键项目-》debug as-》 Android Native Application,加上断点调试吧!
参考:http://www.eoeandroid.com/thread-321983-1-1.html
cocos2dx Android 环境搭建 以及 ndk调试的更多相关文章
- cocos2d-x Android 环境搭建问题汇总
初次接触Cocos2d-x,准备搭建一个hello world的Android环境,问题遇到很多.在此记录,为自己,也为大家,避免重走弯路! 具体的环境搭建,可以参考官方的文档.在Windows7平台 ...
- cocos2d-x Android环境搭建
1.Java虚拟机.分32位和64位.64位: jdk-8u11-windows-x64-8.0.11.12.1406275777 环境变量配置,我的电脑右击->属性->高级系统设置-&g ...
- cocos2d-x 3.0 Android环境搭建(亲測通过)
网上一大堆讲述coco2d-x 3.0 版本号的android环境搭建.真是不忍直視.讲的不清不楚,真是不知道他们自己有没有測试过.今天正好忙完项目有点时间去部署了下android环境. cocos2 ...
- paip.android环境搭建与开发事例
paip.android环境搭建与开发事例 好长时间没有玩AndROID了..以前常常做ANDROID的,今天决定在下载一个要做个时间设置器 作者Attilax , EMAIL:1466519819 ...
- React-native Android环境搭建
基础安装 安装Homebrew Homebrew是Mac OSX的包管理器,我们需要通过Homebrew安装开发React Native的相关软件包. 如果不知道怎样安装Homebrew可以点这里:官 ...
- Android 环境搭建
一.Android 环境搭建 开发工具: Android Studio(开发工具,前提是先装 java JDK) 下载地址:http://www.androiddevtools.cn/ Oracl ...
- 20145308刘昊阳 《Java程序设计》实验四 Android环境搭建 实验报告
20145308刘昊阳 <Java程序设计>实验四 Android环境搭建 实验报告 实验名称 Android环境搭建 实验内容 搭建Android环境 运行Android 修改代码,能输 ...
- android环境搭建——工欲善其事,必先利其器 2
前两天鼓捣android, 搭建环境,不想麻烦就用了 adt-bundle-windows-x86-20140702. rar , 起个模拟器哇塞,太爽了. 出去转一圈唠会回来正好启动成功!有个网友 ...
- 第一课 android环境搭建
android环境搭建需要的工具: 1.JDK 2.eclipse 3.SDK 4.ADT
随机推荐
- C#与C++之间类型的对应{转}
Windows Data Type .NET Data Type BOOL, BOOLEAN Boolean or Int32 BSTR String BYTE Byte CHAR ...
- 接口、抽象类、方法复写、类Equals方法重写
接口: /* * Java接口中的數據成員必須初始化,該成員有隱藏的final.satic.常量, * 一次賦值后不可在賦值 * 成員方法訪問修飾符必須是公共修飾符,可以顯示聲明也可以不聲明 * 成員 ...
- github and SourceTree初步使用
1.建立连接(一次就行了) 输入你的github名字 2.创建仓库 3.下载仓库 这个时候打开SouceTree就可以看到之前创的仓库了 点击克隆,创建一个文件夹,讲路径设置好 这时候查看本地列表就会 ...
- ***RESTful API 设计指南(阮一峰)
网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). 因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信.这导致AP ...
- Baidu和Google搜索引擎使用技巧(转)
转自:Baidu和Google搜索 http://www.douban.com/note/261208979/ 百度搜索一:基本搜索 二:高级搜索 谷歌搜索一:基本搜索1)可部分匹配也可完全匹 ...
- java+内存分配及变量存储位置的区别[转]
原文来自:http://blog.csdn.net/rj042/article/details/6871030#comments Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Jav ...
- Task 使用 Task以及Task.Factory都是在.Net 4引用的。Task跟Thread很类似,通过下面例子可以看到。
static public void ThreadMain() { Thread t1 = new Thread(TaskWorker); t1.Start(3); } static public v ...
- LR_问题_平均响应时间解释,summary与analysis不一致
Summary Report中的时间说明 Summary是按整个场景的时间来做平均的,最大最小值,也是从整个场景中取出来的. (1) 平均响应时间:事物全部响应时间做平均计算 (2) ...
- Android核心分析之十九电话系统之GSMCallTacker
GSMCallTracker在本质上是一个Handler.<IGNORE_JS_OP> 1.jpg (1.52 KB, 下载次数: 1) 下载附件 保存到相册 2012-3-22 11: ...
- java多线程之队列
1.注:先不看阻塞与否,这ReentrantLock的使用方式就能说明这个类是线程安全类. 2.线程安全的类,BlockingQueue,ConcurrentLinkedQueue.这些都是线程安全的 ...