今天将cocos2d-x的示例项目tests编译到android真机运行,以及如何创建cocos2d-x的android项目。

打开cocos2d-x的tests项目,路径为:D:\cocos2d-x-2.0.1\tests

下载:PdaNet:http://xiazai.zol.com.cn/detail/36/350633.shtml

如果你的手机或者平板无法连上电脑,可以下载这个软件。

第一步:编译cocos2d-x的示例项目

首先用visual studio 打开 tests项目,看看项目结构

classes下的tests文件夹就是官方的示例代码,里面包含很全的,可是学习的好途径。

现在使用cygwin编译项目,使用管理员权限打开cmd->cygwin

输入 cd /cygdrive/d/cocos2d-x-2.0.1/tests/proj.android 出现以下界面,然后使用ls列表文件目录

使用文本编辑器打开build_native.sh,将NDK_ROOT_LOCAL变量和COCOS2DX_ROOT_LOCAL变量修改为当前

NDK的根目录路径和cocos2d-x的根目录路径

现在执行 ./build_native.sh 来编译项目,出现Permission denied ,这是由于win7系统下打开了UGA

没有权限访问目录造成的

现在我们给tests文件夹加载读写的权限,不过文件有点多,可以使用导入注册表来做个小工具,批量给文件夹

赋予读取权限。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\runas]

@="管理员取得所有权"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\*\shell\runas\command]

@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

[HKEY_CLASSES_ROOT\exefile\shell\runas2]

@="管理员取得所有权"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\exefile\shell\runas2\command]

@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

[HKEY_CLASSES_ROOT\Directory\shell\runas]

@="管理员取得所有权"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\shell\runas\command]

@="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

将上面的代码保存为reg文件,并点击导入到注册表

现在使用这个小工具批量给tests文件夹赋予读写权限,在tests文件夹上面点击右键,选中 "管理员取得所有权" 执行批处理.

再次执行编译项目,如果看到这样的界面说明编译成功了.

导入tests项目,前面一章已经做过如何导入android项目,现在我们直接导入。

android手机或者平板电脑,用usb连上电脑,记得在android系统里面打开开发调试选项和保持唤醒,

现在使用eclipse将tests项目部署到真机,成功了.

第二步:创建cocos2d-x的android项目

打开cocos2d-x目录下的create-android-project.bat文件

修改以下变量路径

_CYGBIN 路径为 d:\cygwin\bin

_ANDROIDTOOLS 为 d:\android-sdk-windows\tools

_NDKROOT 为 d:\android-ndk-r8

以管理员身份运行cmd,进入到cocos2d-x的目录,执行create-android-project.bat

输入项目路径包名dekins.firstdemo

输入项目名称 dekinsdemo

输入android版本:10(对应android版本2.3.3)

成功后会在cocos2d-x的项目下创建dekinsdemo目录

看下生成的项目结构:

Classes为项目的类代码

proj.android为eclipse的项目文件

Resources为项目的资源文件

注意如果项目包名和项目名称一样的话会出proj.android项目没有jni目录,解决办法:

在proj.android目录手动建一个jni目录,并把helloworld文件夹

Android.mk,Application.mk,list.sh移动到jni目录下。

现在使用cygwin编译这个项目,别忘了右键点击dekinsdemo选择"管理员取得所有权"

使用cygwin执行build_native.sh命令

出现成功界面

现在把刚建好的android项目导入到eclipse中,并部署到真机,成功了.

cocos2d-x avdrid 试例的更多相关文章

  1. Docker Compose 创建yml 简单试例

    Docker Compose 创建yml 简单试例 Docker Compose 文件使用格式版本需要与Docker版本对应可在官网内查找 查找地址:https://docs.docker.com/c ...

  2. C++ 内存模型 write_x_read_y 试例构造

    之前一段时间偶然在 B 站上刷到了南京大学蒋炎岩(jyy)老师在直播操作系统网课.点进直播间看了一下发现这个老师实力非凡,上课从不照本宣科,而且旁征博引又不吝于亲自动手演示,于是点了关注.后来开始看其 ...

  3. ssh 框架整合试例 (spring+struts2+hibernate)

    1.首先用Eclipse创建一个web项目(Eclipse EE 版) new->Other-> 输入web 然后选择Dynamic Web Project->next-> 输 ...

  4. Grails里的集成测试代码试例

    测试的命令,3和2不一样了,要找找.. User.groovy package com.grailsinaction class User { String loginId String passwo ...

  5. Cocos2d-x3.0模版容器具体解释之二:cocos2d::Map<K,V>

    1.概述: 版本号: v3.0 beta 语言: C++ 定义在 "COCOS2DX_ROOT/cocos/base" 路径下的 "CCMap.h" 的头文件里 ...

  6. Cocos2d-x3.0模版容器之中的一个:cocos2d::Vector<T>

    版本号:v3.0 beta以后 语言:C++ 定义在 "COCOS2DX_ROOT/cocos/base" 路径下的 "CCVector.h" 的头文件里. t ...

  7. Cocos2d-x 3.x学习笔记(一):开始Cocos2d之旅

    首先,进入官网下载cocos2d-x:http://www.cocos.com/download/,当然你需要注册一个账号才可以下载. 接下来需要跟着官网的配置文档配置一下开发环境,不得不说,Coco ...

  8. cocos2d 中加入显示文字的三种方式(CCLabelTTF 、CCLabelBMFont 和CCLabelAtlas)

    在 cocos2d 中有三个类能够在层或精灵中加入文字: CCLabelTTF CCLabelBMFont CCLabelAtlas      CCLabelTTF CCLabelTTF 每次调用 s ...

  9. cocos2d programming guide 翻译 引导页(完结)

    http://bbs.tairan.com/article-25-1.html  Cocos2d官方入门指导 原文地址:http://www.cocos2d-iphone.org/wiki/doku. ...

随机推荐

  1. Python获取指定文件夹下的文件名

    本文采用os.walk()和os.listdir()两种方法,获取指定文件夹下的文件名. 一.os.walk() 模块os中的walk()函数可以遍历文件夹下所有的文件. os.walk(top, t ...

  2. 20155225 实验三《敏捷开发与XP实践》实验报告

    20155225 实验三<敏捷开发与XP实践>实验报告 一.使用工具(Code->Reformate Code)把代码重新格式化 IDEA里的Code菜单有很多实用的功能可以帮助我们 ...

  3. Newtonsoft.Json 序列化器的重写

    public class TestConverter : JsonConverter { public override void WriteJson(JsonWriter writer, objec ...

  4. SQL之DELETE

    在SQL中DELETE语句用于删除表中的行. 语法 1.删除特定行 DELETE FROM 表名称 WHERE 列名称 = 值 2.删除所有行:在不删除表的情况下删除所有的行.删除之后表的结构.属性和 ...

  5. Linux下文件压缩与打包

    Linux常用压缩命令compresscompress压缩出来的文件的后缀是.Z,解压命令是ucompresscompress -c 文件 > 压缩后的文件名 ,选项-v显示压缩过程,选项-c的 ...

  6. 15:链表中倒数第K个节点

    /** * 面试题15:链表中倒数第K个节点 * 输入一个链表,输出该链表中倒数第k个结点. */ public class _15_linked_K { public static void mai ...

  7. MXNet——symbol

    参考资料:有基础(Pytorch/TensorFlow基础)mxnet+gluon快速入门 symbol symbol 是一个重要的概念,可以理解为符号,就像我们平时使用的代数符号 x,y,z 一样. ...

  8. 磁盘清理-安全转移C盘中软件的缓存文件

    C盘飘红啦~~~ 安装软件时,默认会安装到C盘,并不会特意去改(尤其C盘是固态硬盘时).或者,根本就没有给你修改的机会. 可是啊,有些软件的缓存数据目录会比较大,实在太占C盘空间.想移出去,但又不想重 ...

  9. oneDay

    难受过 迷茫过 失望过 耍脾气过 开心过 伤心过 疼过 走了这么久的路: 我只想说 程序的道路上 很难走: 本来准备都放弃了: 自己逼自己了很久想明白了: 不能什么时候都想着靠外力 自己的不足就是自己 ...

  10. xml javascript

    1.XMLHttpRequest对象 创建XMLHttpRequest对象 xmlhttp=new XMLHttpRequest(); ##老版本的 Internet Explorer (IE5 和 ...