cocos2dx-3.0(1)------win7 32位android环境搭建

               參照连接http://blog.csdn.net/wonengxing/article/details/23601359html

~~~~个人生活,个人点点滴滴!!
java


一. Android工具安装python

1. 安装JDKlinux

JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 由于这是官网,假设上不去或者下载慢,android

可以自行百度或google下载,我反正是下载的最新的,管他了大笑ios

假设你c盘大,那就默认安装吧,我由于c盘不够了,因此我装在d盘了D:\Program Files\Java\jdk1.8.0c++

环境变量设置web

JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_21
CLASSPATH=.;%JAVA_HOME%\lib;
Path添加%JAVA_HOME%\bin;
本文若是你知道怎么环境变量设置,若是不知道,请使用搜索引擎查找相关资料,设置完后打开cmd,输入java -version
假设出现如下提示,代表设置环境变量成功:


2. 下载Android SDK
Google为Android开发人员提供了ADT(Android Developer Tools),里面包括了SDK和Eclipse。
下载地址是:http://developer.android.com/sdk/index.html
把它解压到一个文件夹,我这里是:d:\adt-bundle-windows-x86\,文件夹结构例如如下:
--<adt-bundle-windows-x86>
--<eclipse>
--<sdk>
--SDK Manager.exe

环境变量设置apache


而后在path中加入例如如下代码 %ANDROID_SDK_ROOT%\tools;%ANDROID_SDK_ROOT%\platform-tools;windows

一个是adb 的路径 一个是emulator 模拟器的路径,注意加入英文分号隔开


3. 下载Android NDK
下载地址是:http://developer.android.com/tools/sdk/ndk/index.html
相同有32位和64位版可选,我选择的是32位版的,把它解压到adt同文件夹下,现在adt的文件夹结构例如如下:

--<adt-bundle-windows-x86>
--<eclipse>
--<sdk>
--<android-ndk-r8e>
--SDK Manager.exe

环境变量设置



在path中加入 %NDK_ROOT%;

4. 下载ANT
ANT是为了本身主动构建Android程序用。
下载地址是:http://ant.apache.org/bindownload.cgi
我选择的是:apache-ant-1.9.4-bin.zip,相同解压到adt文件夹下,现在adt的文件夹结构例如如下:
--<adt-bundle-windows-x86>
--<eclipse>
--<sdk>
--<android-ndk-r9d>
--<apache-ant-1.9.4>
--SDK Manager.exe


看清楚了,个人ant直接设置到bin文件夹下,因此在path中依旧仅仅需要加入 %ANT_ROOT%;


5. 下载Python
原来cocos2dx在不一样平台下必须用不一样的脚原本建立和构建project,3.0之后都统一用python了,因此Windows下需要安装python环境:
下载地址:https://www.python.org/ftp/python/2.7.3/python-2.7.3.msi
原来下载了最新的版本号,使用setup.py的时候发现有语法错误,因此最好使用2.7.3版本号,亲測过没有问题
配置环境变量:最新版本号可以本身主动加进path环境变量,但2.7.3不行,因此咱们仅仅能本身设置一下,若是个人Python安装在:d:\Python27\
把这个路径加到path环境变量中,当咱们在cmd下输入python,出现如下字样,就说明设置环境变量正确了:
C:\Users\arlin>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>


二. cocos2d-x下载与配置

1. 下载cocos2d-x
               眼下最新版本号是3.0,下载地址是:http://www.cocos2d-x.org/download/version#Cocos2d-x
下载完解压到一个地方,我这里:E:\cocos2dx3.0\cocos2d-x-3.0\cocos2d-x-3.0


2. 环境变量设置


               cc需要如下几个环境变量,用于后面的新建project,构建project等:


COCOS_CONSOLE_ROOT: cocos控制台路径,控制台用于新建,构建,发行project。


在path中加入%COCOS_CONSOLE_ROOT%;


在环境变量用户区中加入如下几个
NDK_ROOT: NDK根文件夹
ANDROID_SDK_ROOT: SDK根文件夹
ANT_ROOT: ANT根文件夹
而后执行cocos2d-x根文件夹下的setup.py来配置,假设前面已经把那几项填写正确了,如下会一次就过,
假设没有填写,如下会给出要填写这几项的提示,而后输入就OK了,假设出现如下几行表示成功了

Please restart the terminal or restart computer to make added system variables t
ake effect


命令最后提示咱们从新启动终端或者从新启动系统,以让这些环境变量生效,通常咱们关闭cmd和资源浏览器便可了,假设后面遇到环境变量找不到的错误,

直接从新启动系统试试吧。

要測试环境变量是否生效,又一次打开cmd,输入如下命令查看,正常应该是这样:

E:\cocos2dx3.0\cocos2d-x-3.0\cocos2d-x-3.0>set NDK_ROOT

NDK_ROOT=d:\adt-bundle-windows-x86\android-ndk-r9d

E:\cocos2dx3.0\cocos2d-x-3.0\cocos2d-x-3.0>set ANT_ROOT

ANT_ROOT=d:\adt-bundle-windows-x86\apache-ant-1.9.4\bin

E:\cocos2dx3.0\cocos2d-x-3.0\cocos2d-x-3.0>set ANDROID_SDK_ROOT

ANDROID_SDK_ROOT=D:\adt-bundle-windows-x86\sdk

E:\cocos2dx3.0\cocos2d-x-3.0\cocos2d-x-3.0>set COCOS_CONSOLE_ROOT

COCOS_CONSOLE_ROOT=F:\cocos2dx\cocos2d-x-3.0rc0\tools/cocos2d-console/bin

OK,到这里,环境就已经配好了,如下来建立项目!



3.新建和构建project

1. 新建project

             咱们要用tools\cocos2d-console这个工具来新建project,这个工具提供了如下几个功能:

new    建立一个新的project

compile    编译当前project,生成二进制文件,我的认为写为build更贴切一些。

deploy    公布程序到一个平台

run    编译和公布,和执行程序

咱们现在仅仅用到new,让咱们看看new提供了哪些參数,打到cmd,输入:

cocos new --help

这里本身去看,我直接给出建立project的方法

cocos new 本身项目名 -p 包名 -l cpp(表示建立c++) -d E:\cocosProject(项目存的路径)

如下给出一个bat文件,仅仅要双击便可了。

@echo off
echo ===========新建项目=========
set /p name=请输入项目的名称:
echo 项目名为: %name%
echo 正在建立新项目...
set pk=com.hzf.
cocos new %name% -p %pk%%name% -l cpp -d E:\cocosProject
echo 建立完毕
pause
tp:假设直接复制执行时报错,可以手动敲一遍。

可以看到各类平台下的project都建立出来了,同一时候它把cocos2d整个框架都拷贝过来了,这样的好坏就见仁见智了,但是可以确定一点,

那就是第一次编译时会很是慢,因为要把所有又一次编译一遍,因此没事千万不要又一次生成!!切住(血的教训)



2. 构建Androidproject

          同一时候是用到cocos2d-console,这里要用的是compile这个命令,在cmd输入如下查看帮助:

E:\cocosProject\mbgame\mygame1>cocos compile --help


usage: cocos compile [-h] [-s SRC_DIR] [-q] [-p PLATFORM] [-m MODE] [-j JOBS]
[--ap ANDROID_PLATFORM] [--source-map]

把当前project编译为二进制


可选參数:

-h, --help 显示帮助信息

-s SRC_DIR, --src SRC_DIR

project根文件夹,比方上面应该是E:\cocosProject\mbgame\mygame1

假设不设,就为当前文件夹(cmd定位到的那个文件夹)

-q, --quiet less output

-p PLATFORM, --platform PLATFORM

选择一个平台 android|ios|mac|web|win32|linux

-m MODE, --mode MODE 编译模式 debug|release, 默以为debug.

-j JOBS, --jobs JOBS 半行编译,假设你有2核,可以设为2。


Android Options:

--ap ANDROID_PLATFORM

指定SDK版本号?没试过,不敢枉下定论,保留英文:

parameter for android-update.Without the parameter,the

script just build dynamic library for project. Valid

android-platform are:[10|11|12|13|14|15|16|17|18|19]


Web Options:

--source-map Enable source-map


现在咱们在cmd输入:

E:\cocosProject\mbgame\mygame1>cocos compile -p android -j 2

意思就是说咱们要编译当前文件夹下的Androidproject,同一时候可以有4个编译任务,因此个人4核机器就满负的跑了,如无心外,应该可以看到编译開始了,最后假设看到如下这几句,说明编译成功:

BUILD SUCCESSFUL

Total time: 17 seconds

Move apk to E:\cocosProject\mbgame\mygame1\bin\debug\android

build succeeded.


咱们到E:\cocosProject\mbgame\mygame1\proj.android\bin\,可以看到mygame1-debug.apk,说明构建完毕。

我把它安装到手机上试跑,发现好像启动速度是快了很是多,不知是否是心理做用。


三.在Eclipse下执行程序

还记得咱们下的adt里面有eclipse吗,现在咱们就来把project导入到eclipse跑跑看


1. 到d:\adt-bundle-windows-x86\eclipse打到eclipse.exe

       第一次会提示设置工做区,你可以设置工做区放在哪里,我这里为了演示就默认了。

2.接下来咱们要看看SDK和NDK的路径是否正确:

       选择Windwos/Preferences菜单项,打开选项对话框。

       选择Android结点,看看SDK Location是否正确,我这里为F:\software\adt-bundle-windows-x86-20131030\sdk,说明是正确的,假设没有值,就手动把SDK的根文件夹设进去。

       接着选择Android/NDK结点,在NDK Location输入d:\adt-bundle-windows-x86\android-ndk-r8e

3.接下来咱们来导入project,选择file/import,打开导入对话框:

       选择Android/Existing Android Code Into Workspace,而后Next。

       第一步要先把libcocos2dx导进来:

             在Root Directory输入F:\cocos2dx\mbgame\mygame1\cocos2d\cocos\2d\platform\android\java

             此时列出libcocos2dxproject,点击finish把project导进来。

        第二步导入咱们的project:

            在Root Directory输入F:\cocos2dx\mbgame\mygame1\proj.android。

            此时会列出mygame1project,点击finish把project导进来。

       最后链接手机,选择执行或调试就可以跑程序了。

       在导入project到Eclipse时遇到几个坑,在这里记下来,省得后面的人继续踩这些坑:

            没有导libcocos2dx,仅仅导mygame1时不会有编译错误,但跑起来后会ClassNotFound异常,说找不到org/cocos2dx/lib/Cocos2dxHelper类,这个问题搞了我很久,后来在论坛看到贴子才明确,但愿兴许官方有具体的文档。

        因为adt仅仅包括了android4.4(api-19)的版本号,因此默认使用的是这个版本号,我本身拷了几个更低的版本号,而后把Build target设为android2.3(api-9),此时执行程序会提示如下错误:

             Unable to execute dex: java.nio.BufferOverflowException

        后来在网上查了一下,发现是Android SDK Build tools的BUG,把它升级到19.0.3后就行了:打开SDK Manager,找到19.0.3的Android SDK Build Tools,安装之。