Android应用内嵌cocos2dx游戏项目
cocos2dx的Android环境搭建(Windows/Mac)
我用的cocos2dx3.15版本的。
以下步骤是在Windows平台执行的。
创建Cocos2d-x项目
将刚才下载的cocos2dx3.15压缩包解压到你指定的文件夹里。
进入到目录cocos2d-x-3.15/tools/cocos2d-console/bin/cocos.py
打开终端运行cocos.py脚本创建文件
python cocos.py new test -p com.coco2dx.org -l cpp -d ~/Desktop
参数说明:
- test为项目名称
-p
后面接包名-l
后面接开发语言类型,有cpp, lua, js三种类型-d
后面接项目存放的目录
编译libcocos2dlua.so文件
eclipse(不太推荐,谷歌已经放弃eclipse)
- 创建一个空的android工程(我的工程是 TestAndroidCC)
- 进入到刚刚创建的cocos2dx工程的proj.android
目录下(我的是:D:\workspace\Cocos2dx_Pro\JXKJ_GAME\frameworks\runtime-src\proj.android)
- 打开终端,执行 cocos compile -p android -android(因为cocos取消了执行build_native.py脚本编译的方式,统一用cocos命令,环境配置好了就可以直接执行cocos命令,如果cocos2dx命令未找到,说明环境配置有问题)或者可以执行 python D:\cocos2d-x\cocos2d-x-3.15\tools\cocos2d-console\bin\cocos.py compile -p android -android
- 等待编译完成后,找到libcocos2dlua.so文件(在libs/armeabi目录下)
- 把刚刚编译好的so文件所在的文件夹复制到TestAndroidCC目录下的libs文件夹下
- 把cocos2dx的资源目录(res和src文件夹)复制到TestAndroidCC的assets目录下
- 把cocos2dx3.15引擎D:\cocos2d-x\cocos2d-x-3.15\cocos\platform\android\java\src目录下的org文件拷贝到TestAndroidCC/src目录下
- 在MainActivity.java的同级目录创建一个新Activity文件(名字自己定义,我的是GameActivity)继承Cocos2dxActivity(别忘了导入包import org.cocos2dx.lib.Cocos2dxActivity;)
- 在AndroidManifest.xml 添加对新Activity的配置,添加注册新的GameActivity
- 参考cocos2dx游戏项目的AndroidManifest.xml文件,对TestAndroidCC的AndroidManifest.xml做改动
- 在activity_main.xml布局里添加一个button,然后在MainActivity里添为button添加事件
- 编译运行TestAndroidCC,我用的是 夜神模拟器
Android Studio
- 创建一个空的android工程(我的工程是 TestAndroid)
- 进入到刚刚创建的cocos2dx工程的proj.android-studio
目录下(我的是:D:\workspace\Cocos2dx_Pro\JXKJ_GAME\frameworks\runtime-src\proj.android-studio)
- 打开终端,执行 cocos compile -p android --android-studio(因为cocos取消了执行build_native.py脚本编译的方式,统一用cocos命令,环境配置好了就可以直接执行cocos命令,如果cocos2dx命令未找到,说明环境配置有问题)或者可以执行 python D:\cocos2d-x\cocos2d-x-3.15\tools\cocos2d-console\bin\cocos.py compile -p android --android-studio
- 等待编译完成后,找到libcocos2dlua.so文件(找了好久,发现在D:\workspace\Cocos2dx_Pro\JXKJ_GAME\frameworks\runtime-src\proj.android-studio\app\build\intermediates\transforms\mergeJniLibs\debug\folders\2000\1f\main\lib)
- 在app/src/main目录下新建一个jniLibs(名字必须是这个一个字母都不能差)文件夹,把刚刚编译好的so文件所在的文件夹(armeabi文件夹)复制到jniLibs文件夹下
- 在TestAndroid项目中导入Module,右击项目文件 - new - Module - Import Eclipse ADT Project导入D:\cocos2d-x\cocos2d-x-3.15\cocos\platform\android\java目录,libcocos2dx的Module导入成功
- 对TestAndroid添加libcocos2dx的引用,右击项目文件 - app - Dependencies添加libcocos2dx
- 把cocos2dx的资源目录(res和src文件夹)复制到TestAndroid的src/main/assets目录下(如果没有assets文件夹:右击TestAndroid项目下的app文件夹 - new - Folder - Assets Folder创建)
- 在MainActivity.java的同级目录创建一个新Activity文件(名字自己定义,我的是GameActivity)继承Cocos2dxActivity(别忘了导入包import org.cocos2dx.lib.Cocos2dxActivity;)
- 在AndroidManifest.xml 添加对新Activity的配置,添加注册新的GameActivity
- 参考cocos2dx游戏项目的AndroidManifest.xml文件,对TestAndroidCC的AndroidManifest.xml做改动
- 在activity_main.xml布局里添加一个button,然后在MainActivity里添为button添加事件
- 编译运行,我用的是 夜神模拟器
如果想要退出游戏返回应用界面①cocos2dx lua项目:cc.Director:getInstance():endToLua() ②cocos2dx c++项目:cocos2d::Director::getInstance()->end();
注意事项:编译so的时候失败,原因可能是NDK版本过高,也有可能是sdk tools版本过高,建议下载旧一点的tools,我下载的是tools_r25.2.5-windows.zip,替换Android-SDK下的tools
Android应用内嵌cocos2dx游戏项目的更多相关文章
- IOS应用内嵌cocos2dx游戏项目
1.创建Cocos2d-x项目 相比于Android来说cocos2dx的iPhone环境基本不用配置,直接创建用xcode打开就可以运行. 到Cocos2d-x官方网站下载最新版本引擎. 将刚才下载 ...
- Android应用内嵌unity3d游戏项目
在一个现有的Android项目中嵌入unity3d项目 1.将unity3d项目导出android工程 2.将第一步导出的Android工程中assets文件夹和libs文件夹下的所有内容复制到And ...
- Android工程内嵌Flutter
本文记录一下Android主工程中嵌入部分Fluttter页面的实现方法. 创建一个Android工程模拟你的现有工程 为了让Android工程和Flutter工程互不干扰,这里不再以Android工 ...
- Android/iOS内嵌Unity开发示例
Unity 与 Android/iOS 交叉开发主要有两种方式,以 Android 为例,一是 Android 生成 jar 或者 aar 包,导入到 unity3d plugin/bin/ 目录下: ...
- android EditText内嵌图片
如下所示: 主要用到的属性:android:drawableLeft <EditText android:layout_width="match_parent" androi ...
- Android Lint——内嵌于Android Studio的代码优化工具
Android Lint工具是Android Studio 自带的静态代码工模具,Android Lint是专门针对Android 定制的检查规则,因此可以检查出很多Android特有的代码缺陷.建议 ...
- cocos2d-x调用android内嵌浏览器打开网页
cocos2d-x调用android内嵌浏览器打开网页,能够从入口传入网址,C++调用android 的api就可以实现. 方法也非常easy 1. 改动"cocos2dx\platform ...
- 关于Unity程序在IOS和Android上显示内嵌网页的方式
近期因为有须要在Unity程序执行在ios或android手机上显示内嵌网页.所以遍从网上搜集了一下相关的资料.整理例如以下: UnityWebCore 从搜索中先看到了这个.下载下来了以后发现这个的 ...
- 使用Chrome开发者工具调试Android端内网页(微信,QQ,UC,App内嵌页等)
使用Chrome开发者工具调试Android端内网页(微信,QQ,UC,App内嵌页等) 前言 移动端页面调试一直是好多朋友头疼的问题,iOS 由于其封闭的特性和整体较高的性能,整体适配相对好做,调试 ...
随机推荐
- Jenkins自动化部署war项目
基于上一篇Jenkins安装环境,下面对自动打包部署做个备忘 1.安装:Publish over SSH 插件 2.安装完成后,进入下图配置 ↓↓↓ 3.翻到底下↓↓↓ 找到刚刚安装的Publish ...
- mysql批量替换数据
如题,项目域名迁移,导致原来商城的商品图片无法查看,地址错误. 怎么办?修改数据库图片路径呗!什么几千行呐,开玩笑.这个任务没人接,只有我干咯! 怎么也得不少时间吧,好吧半天,这是上面的要求. 有聪明 ...
- [C#]一个简易的、轻量级的方法并行执行线程辅助类
一个简易的.轻量级的方法并行执行线程辅助类 在实际应用中,经常要让多个方法并行执行以节约运行时间,线程就是必不可少的了,而多线程的管理经常又是一件头疼的事情,比如方法并行执行异步的返回问题,方法并 ...
- windows安装gitblit服务端
由于windows下没有gitlab之类的工具,只有很久没有更新的gitblit 下载Gitblit, 下载地址:http://www.gitblit.com/ 很长时间没有更新了,在没有linux环 ...
- solrj管理索引库
solrj管理索引库 1.1. 什么是solrJ solrj是访问Solr服务的java客户端,提供索引和搜索的请求方法,SolrJ通常在嵌入在业务系统中,通过SolrJ的API接口操作Solr服务, ...
- node的优缺点及应用场景
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎(V8引擎执行Javascript的速度非常快,性能非常好) 可以说node是运行在服务器端V8引擎上的Ja ...
- 安装Rational Rose后提示java.lang.ClassNotFoundException
1. 在运行中输入regedit回车,打开注册表编辑器2. 搜索 TrustedClasspath [REG_SZ] ,因为64位和32位不一样. 4.添加值c:\windows\java\trust ...
- 常用.net反编译替换正则表达式
.set_([^\(]*) .$ = ------------------ .get_([^\(]*)\(\) .$ ------------------ .get_Item\(([a-z|-]+)\ ...
- MVC设置启动页
设置启动页需要在路由中添加一段代码: public static void RegisterRoutes(RouteCollection routes) { rou ...
- MVC数据库连接
创建数据库 创建表 来源:http://blog.csdn.net/tkdwave520/article/details/44629903 <pre name = “code” class ...