声 明本教程仅用于初学cocos2dx同学使用,内容由本人(孤狼)学习过程中笔记编写,本教程使用cocos2dx版本为2.1.4。本教程内容可以自由转载,但必须同时附带本声明,或注明出处。gl.paea.cn版权所有。
上节我们说到和“屌丝一起学cocos2dx-CCTextFieldTTF”,可是最后,我们在win下却打不开虚拟键盘,导致我们也不知道是不是成功,所以有必要提前说下移植方法,我们这里是win移植到android上。好了,废话不多说,开始。
如果你的环境和我的搭建的不同,可以参考一下“和屌丝一起学cocos2dx-环境搭建”,看看有哪些不一样的。
2013/08/29更新:
谷歌SDK升级方式:(推荐第三种)
1.翻墙(速度慢) 2.采用直接下载SDK包
3.解析升级地址到谷歌中国服务器:修改本机的hosts把"dl.google.com""dl-ssl.google.com"这两个网址指向203.208.46.146谷歌中国服务器地址,这样就能很快的升级.
1.使用批处理生成android项目。
我们找到cocos2dx的安装目录下的create-android-project.bat文件,然后右键修改它。
第14行 set _CYGBIN=C:\cygwin\bin
这里修改成你的cygwin的安装地址。
第18行 set _ANDROIDTOOLS=e:\android\android-sdk\tools
这里修改成你的SDK安装地址
第22行 set _NDKROOT=e:\android\android-ndk-r8
这里修改成你的NDK的安装地址
然后,我们运行它。
好的,我们看到提示,输入包地址。我们这里就输入个 org.gulang.myhello 吧。
好的,这里让我们输入项目名称,我们就输入 Myhello 吧,回车之后,就会开始生成,大约等待戈10秒反应。
我们就会看到让我们输入版本号,这里已经列出来可用的版本,我们只需要输入对应的id就行了,这里我输入4,我机器上4对应的是2.2版本。
好了到此为止,生成android项目的事情就结束了,下面我们去整合。
来到cocos2dx的安装目录,我们找下刚才起的项目名的文件夹 Myhello
我们看到有3个文件夹,一个是classes文件夹,这里是放我们的C++文件的,proj.android是放我们的项目文件的。resources是放资源的。我们把我们的项目拷贝进来。
拷贝好了以后,我们就开始把它们转换到android了。
开启cygwin。
进入到 proj.android 目录下,输入 ./build_native.sh 开始编译。
oh,忘了装make,没有编译成功,好吧,我去装一下。顺便这里说下,之前我们教程里说了可以直接找163的去安装,可是现在163并不在列表里面了,所以我们要手动添加列表,http://mirror.pkill.info/cygwin/ 把香港的cygwin镜像添加进去。然后下载。
然后我们继续,可是错误还是来了。
没有规则可以创建“obj/local/armeabi/objs/game_shared/__/__/Classes/HelloWorldScene.o”需要的目标“jni/../../Classes/HelloWorldScene.cpp”。 郁闷的是,我没有HelloWorldScene.cpp啊。这个我已经删除了啊?
找了所有文件比对之后发现,要修改proj.android\jni目录下的Android.mk文件,把里面的cpp名称换成自己的,比如MyhelloScene.cpp,然后去生成就可以了。过程时间较长,慢慢等待。
这里,倒数第二行,我们可以开到,已经成功的生成了.so文件,那么我们就是成功了ok,开始下一步。
我们先打开eclipse 把我们的项目引进来。
好了这里,我们就把项目成功的引入到eclipse中来了。我们来看看。
什么?还有错误?我么看看错误是 import org.cocos2dx.lib.Cocos2dxActivity; 这句找不到资源?
这里要注意,直接生成的android项目是没有系统资源的,我们去拷贝过来。
找到 cocos2dx\platform\android\java\src 文件夹,把里面的org文件夹整个复制到我们项目中去。
然后刷新eclipse列表
Look,错误没有了。好的,那我们继续。
接着我们创建一个虚拟机。这两种方法都可以打开虚拟机管理界面。
我们点击右上角的 New
这里的AVD Name就是虚拟机的名称,自己填,然后是选择屏幕大小,之后是系统版本最下面有个SD Card 我们写个100.之后点击OK。
然后关掉虚拟机管理界面。开始运行程序。
启动的会很慢,毕竟只是模拟嘛。等等吧
最后我们导出apk。
这里输入项目名称
这里我们选创建一个新的keys,然后选择保存位置,设置一个密码。
接下来填写详细的密钥信息
接着选择保存路径,然后点击finish生成即可。