有那个网站做外贸,苏州建设网站微信公众号,四川省建设信息网站,征婚网站建设cocos2dx程序不能只在VS2012下运行#xff0c;迟早是要搬运到Android和IOS上的。Windows下移植IOS平台先搁下不说比较困难#xff0c;而且只有越狱的苹果机才可以运行#xff0c;而且毕竟IOS高端、小众。这里主要讲一下移植Android#xff0c;windows下cocos2dx打包成APK和… cocos2dx程序不能只在VS2012下运行迟早是要搬运到Android和IOS上的。Windows下移植IOS平台先搁下不说比较困难而且只有越狱的苹果机才可以运行而且毕竟IOS高端、小众。这里主要讲一下移植Androidwindows下cocos2dx打包成APK和在eclipse下运行的方法。 本文接上篇win8下环境配置的博客在cocos2dx和VS2012的配置完成后 如果还没有配置cocos2dxVS2012的环境请最好先参考博客进行配置http://blog.csdn.net/u012200908/article/details/38056917 cocos2dx和VS2012相比配置Android十分简单。在配置完成之后这个时候系统变量path中有了cocos2dx的目录和Python的目录这些也是移植Android平台要使用的。 篇幅长主要是因为笔者网上看过很多教程讲的不够透彻许多新手看不懂自己不想这样。所以这篇博客图片较多造成长篇累牍。还请各位读者见谅。 下面先说一下准备工作配置Android有关的环境用的东西包含如下 1、 首先需要JDK我用版本是1.8.0.1164位 官网http://www.oracle.com/technetwork/java/javase/downloads/index.html 可以上网搜一下或者百度云百度云共享的为64位如果有人是win8或者win732位的系统还是按上面的网址去官网下载吧 http://pan.baidu.com/s/1dDzRQBf 2、 Android ADT 官网可以直接下最新的7月2号的版本 http://developer.android.com/sdk/index.html 我的百度网盘有64位的可以下 http://pan.baidu.com/s/1bn8dwXT 解压到你习惯的目录下建议某磁盘根目录 如果你想使用我的版本 14年3月21号的 以避免可能出现的问题我认为应该不会有的。。 网盘里面也有64位的可以下 http://pan.baidu.com/s/1sj15u1n 3、 Android NDK 这个很关键不要下r10版本会有问题这个是因为官方的原因。 参见 http://cn.cocos2d-x.org/tutorial/show?id1187 这里选择r9d版本我实在是在官网找不到下载链接因为只看到r10的一堆链接其他版本一个下载链接没找到。。。 最后找到一个网址 https://dl.google.com/android/ndk/android-ndk-r9d-windows-x86_64.zip https://dl.google.com/android/ndk/android-ndk-r9d-windows-x86.zip 后缀有64即为64位系统 可以去我的百度云下载64位NDK http://pan.baidu.com/s/1jGsWan8 先不急着解压 4、下载ANT 这里使用的是1.9.4的ANT 官网直接下载zip包 http://ant.apache.org/bindownload.cgi 先不急着解压 5、现在将NDK和ANT全部解压到ADT下面去以方便管理 现在ADT下面有 NDK SDK Eclipse ANT SDK Manager.exe 这里要强调一下CMD运行要尽量都在管理员身份运行的情况下请从查看所有程序发送一个快捷方式到桌面每次右键以管理员身份运行。然后CD到你要用的目录。 下面正式开始 step 1 安装JDK记住JDK的路径这里要强调一点就是你文件夹路径里面不可以有空格和中文字符。所以你不要装在默认的program files里面。建议自己找个地方装JDK。 计算机-右键属性-高级系统设置-环境变量 点击进入环境变量在系统变量下点击新建 JAVA_HOME C\Java\jdk1.8.0_11//就是你JDK的路径这里不需要加分号 CLASS_PATH .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;//前面有个点请大家注意 再找到path变量要加三个东西 1在最前面加上%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 2path里面还要再加上Android SDK下面tools文件夹的路径。 例如笔者的是C:\adt-bundle-windows\sdk\tools; 请使用绝对路径加上这个路径之后在使用android list targets查看sdk版本的时候就不会出现Android不是内部或者外部命令这样的错误。 3然后把ANT的变量也一起配置一下有备无患。path中继续添加 ANT目录\bin;//建议直接找到那个目录然后将路径复制黏贴到里面但注意后面要加上\bin step2: 上面的工作完成之后我们需要再次运行setup.py将NDK_ROOT、SDK_ROOT、ANT_ROOT关联到cocos。 打开CMDcd到cocos2dx目录下 输入setup.py回车。还记得一开始只配置cocos2dx和VS时候的运行结果吗 结果如下他会提示你Please enter the path of NDK_ROOT 参照我下面输入的一个个输入进去建议拷贝路径之后右键黏贴然后回车。我的路径有点儿长没有改ADT的名字后来我全部删除重新调试过大家可能会发现我的ADT前后不一样这个大家知道一下就行了。一定要输入自己的正确的路径 回车就会添加一个变量。到最后ANT_ROOT设置完了之后这一块也就完了。然后他会提示你重启命令提示符或重启系统这里重启下CMD就行了。如果有问题再重启吧。 可以在关闭之后再次在这个文件夹打开CMD再次运行setup.py验证是否生效。 或者输入set NDK_ROOT、set ANDROID_SDK_ROOT、set ANT_ROOT查看 这里请注意笔者再次提醒图片笔者是两次截图所以路径有的地方是adt-bundle-windows-x86_64-20140702后来笔者改用了20140321的版本造成其他地方路径是修改了之后的adt-bundle-windows如果有不便还请谅解一下啦。 step3: 构建Android工程apk 下面新建一个工程这里不做赘述。 工作目录内shift 右键 打开CMD cocos new helloworld -l cpp -p com.losers.game 在工作目录下创建了一个helloworld项目(这里要注意如果工作目录路径里面有空格建议删除工作目录重建否则会编译出错) 在构建APK之前先打开ADT中的Eclipse启动SDK Manager更新一下SDK至少保证一个版本的SDK可以使用。但这个版本要新一些笔者选择了4.4.2因为太旧了会有OpenGL的问题建议大家也更新一下4.4.2大有用处。这里先说一下后面具体解释。 更新SDK的时候可能存在Fetching很慢的问题请点击Tools——option——下面的Others中把第一个选项勾中即可。 相信速度会快很多。而且下载成功率也会大大提高。其他的方法比如修改hosts文件在此不冗述请大家自己百度一下方法。 在确保有至少一个完整可用版本的SDK后后面要用的是cocos2d-console,compile的命令 在helloworld目录下打开CMD下输入下列命令查看帮助 cocos compile --help或者 cocos compile -h 然后输入cocos compile -p android -j 4打包APK。这儿说一下要在管理员模式下执行命令提示符以防出现问题。 即编译当前目录的安卓工程可以同时有4个编译任务让4核机器满负荷跑。 这里当然可以根据你的手机Android版本加上 --ap 数字10 —— 20目前是这样的以后除了新版本数字会增加这里我选择了缺省让他自己找。因为原理上是可以自己找的我要全方面判断是否有问题。 版本对应的数字我想在用SDK Manager的时候大家都会看到 如果你不知道可以在CMD中输入android list targets查看如下图 笔者SDK只有2.3.3和4.4.2的对应数字是10和19 然后执行 cocos compile -p android -j 4打包APK 根据它提示的路径去找到那个让我们又爱又恨的APK 跟同学借个手机来跑跑试试。结果如下版本Android4.0 这里要说一下笔者在打包APK的时候遇到了一些问题说java.exe不是内部或者外部命令也不是可运行的程序也不是批处理文件。 这个应该是一开始的JAVA环境变量配置有问题造成的你要看看你的跟java有关的变量路径里面是否有类似于program files一样有空格的路径。如果有请卸载JDK重装再别的路径没有中文和空格的文件夹里面然后修改路径重启电脑以管理员方式运行CMD重试一下笔者就是这样解决了问题。 step4: eclipse下跑程序 继续回到前面打开的Eclipse将我们要打开的项目给整进来。 但在这之前最好查看NDK和SDK路径是否正确 window——preferences——Android查看SDK和NDK检查location是否正确 如果你用的新版本7月2号版本的你会发现卧槽为啥怎么找NDK都找不到啊这个原因我也不知道。需要往Eclipse的plugins文件夹下拷贝一个jar包叫做com.android.ide.eclipse.ndk_23.0.2.1259578.jar 这是下载地址 http://pan.baidu.com/s/1i3xbM0d 这个NDK里面没有应该是没有什么影响的我是在配置环境出错的时候病急乱投医了找了各种方法觉得这个还是加上好所以就说一下。幸亏我用的不是这个版本不过我的大神舍友说这个NDK就算空着也不会影响。。。。。 下面开始导入我们的项目 import-Existing Android Code Into Workspace 选择我们的项目中proj.android文件-Finish 这里一定不要勾选copy projects into workspace否则后果很严重笔者亲测。。。。 这个时候程序会有错误是因为类库没有引入以后每次都要引用一下了。你需要找到你创建的项目所在的地方。 我是在C:\cocosworkspace\helloworld\cocos2d\cocos\platform\android\java\src 下面就是原项目里面里面有个org文件夹复制一下拷贝到我们用Eclipse打开的helloworld项目的src中去。提示是否重写选yes,这样错误就没有了。 下面重点来了。 第一点我们可以看到这个地方默认的版本是Android2.3.3笔者就是在这个地方被困住了两天两夜我新建了2.3.3的AVD也勾选了Use Host GPU但就是报相关OPENGL的错误。后来我多方查证才知道openGl在Android2.2之后才支持真机所以默认版本是2.3.3模拟器版本4.0.3之后才能跑我只想说cocos2dx和Android都太哔哔了自己和谐一下。 所以这个地方在项目上右键——properties——切换到4.4.2版本等一会儿Eclipse为我们自动切换。 切换了版本之后新建4.4.2的AVD勾选下方的Use Host GPU这个AVD就是我们要用的模拟器。 第二点同时这里要注意如果以后你编写cocos程序增加了cpp你需要到Android.mk文件中将cpp添加进去 下面是Android.mk文件jnj文件夹下 要在LOCAL_SRC_FILES下面写上你所有的cpp文件这里要注意除了最后一个cpp以外每个后面都有一个斜杠。 以上都完成之后启动AVD运行一下大家请看~当当当当~ 这里我调整成了较宽的AVD。 到此配置就完成了~~~~~ 因为我学cocos2dx的时间也不是很长只有一个多月写这篇博客是一位cocos2dx吧的吧友提出的疑问我就自己配置了一下虽然在cocos2dx下做项目但我是用Xcode和VS2012。打包APK和一直Android平台是另一位队友的任务。这位吧友也让我学到了不少知道了自己的不足持续了一个多周总算是把Mac下和windows 8.0下cocos2dx3.2移植Android平台的教程都写了出来。如果大家遇到问题或者发现我的博客里面有错误请留言我会尽力给大家解答以及修正博客。 2014.8.6 22:45 Mr.Losers