首先:
1.xcode是只能编译IOS版本(当然mac版本也行)
2.游戏主要是用C++编写,所以在开发游戏的时候主要选择的开发环境是能编写C++代码的IDE。
3.Eclipses是主要用于编写java代码的一个IDE,但它是基于插件的,你装个插件CDT,就能在Eclipse里面编写C++代码。
4.对于cocos2d-x的Android工程来说,能够让原生的用java写的Android工程调用C++编写的游戏逻辑,主要是通过jni来通信的。实际在Android工程运行起来的时候,C++代码已经被编译成.so的动态链接库了。C++代码是以动态链接库的形式供java层调用的。
看了上面几条啰嗦的话后,想想,Android工程的运行应该分这么3个步骤:编写C++代码->编译C++代码->运行Android工程。
这个是区别于IOS和Windows的。这IOS和Windows上开发的时候你可以随时打断点调试C++代码,但是Android工程不行,因为你运行Android程序的时候,C++代码已经被编译成动态链接库了。
你在Mac上想开发Android工程的话,你还是用xcode编写游戏就可以了。写好之后,你用NDK把C++代码编译成动态链接库就可以了。当然编译好后你要运行Android程序肯定是需要用Eclipse来运行的。用cocos2d-x生成好的工程文件,Android工程里面有build_native.sh文件,配置了NDK_ROOT路径后在终端运行这个文件就可以了。编写好的动态链接库在Android工程下的libs文件夹下。如果编译不成功,C++代码没什么错误的话,那很可能是jni层写的代码有问题,还有个重要的文件是mk文件,这个文件告诉了NDK应该编译那些C++代码。你自己写了C++的代码,你是需要在mk文件里面写出来的。这样NDK编译的时候才会把你的C++代码编译进去。一切编译好后在Eclipse里面运行Android工程就可以了。