cocos2dx 2.0版本在android下的安装配置问题

本文详细记录了解决Cocos2d-x Android开发过程中遇到的三个主要问题:安装Android环境、配置Cocos2d-x、解决OpenGL ES 2.0不兼容问题。通过提供具体的步骤和代码修改建议,帮助开发者顺利解决问题并成功运行Cocos2d-x界面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、首先要安装android,这个按步骤来就行了,具体步骤网上都有 
http://w1334986743.blog.163.com/blog/static/198265015201111410211410/ 
http://www.raywenderlich.com/5527/getting-started-with-android-development 

二、然后是安装cocos2dx,可参考下列网站 
http://www.cnblogs.com/zilongshanren/archive/2012/04/28/2473282.html 

本来以为这样就OK了,没想到这个时候就报错了: 
1、Caused by: java.lang.UnsatisfiedLinkError: Couldn't load game: findLibrary returned null 
一开始不明白是怎么回事,后来仔细看了步骤才发现少了一步,那就是编译工程项目,即运行proj.android文件夹下的build_native.sh,这一步会生成libgame.o,原来报的错就是因为缺少这个文件。 

2、那个错误好了以后又开始报了个错: 
java.lang.IllegalArgumentException: No configs match configSpec 
网上给的解决方案是:到android-ndk安装目录下的samples\hello-gl2\src\com\android\gl2jni目录下找到GL2JNIView.java,将其中的 
setEGLConfigChooser( translucent ? 
                             new ConfigChooser(8, 8, 8, 8, depth, stencil) : 
                             new ConfigChooser(5, 6, 5, 0, depth, stencil) ); 
修改为:setEGLConfigChooser(5, 6, 5, 0, 0, 0); 
本来以为这次一定没问题了,没想到最大的麻烦才刚刚开始。 

3、接上面,问题还是没解决。于是继续在网上寻找解决方案,看到有个老外说2.0只支持真机而不支持模拟器运行,于是才导致的这问题,因为模拟器不支持OpenGL2.0。于是这个时候问题转移到了don't support gles2.0这个bug上面来了。 
最后终于在cocos2dx官方论坛上找到了解决方案。经测试终于看到cocos2dx那界面了。 
方法如下: 
<1>、在mainfest文件下添加这一行 
<uses-feature android:glEsVersion="0x00020000" android:required="true" /> 

<2>、在android-sdk安装目录下的 
\samples\android-16\ApiDemos\src\com\example\android\apis\graphics里的GLES20Activity.java里面有个方法detectOpenGLES20,修改成如下
 
Java代码   收藏代码
  1. //记得添加import  
  2. import android.os.Build;  
  3. private boolean detectOpenGLES20() {  
  4.         ActivityManager am =  
  5.             (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);  
  6.         ConfigurationInfo info = am.getDeviceConfigurationInfo();  
  7.         return (info.reqGlEsVersion >= 0x20000 || Build.FINGERPRINT.startsWith('generic'));  
  8.     }  



<3>、在Eclipse下打开AVD manager,修改AVD设置 
在Hardware选项里面添加一项:GPU emulation。并将value值设置问yes。 

终于搞定!声明一下:以上的种种解决方案都是在网上收集而来,非我原创。另外对于android小白的我来说,前辈们在给出解决方案的时候没有具体指明是要修改哪些文件导致我纠结了好一阵,因为对于没用过android的我们来说,这些文件我们都不熟悉,所以我在每一部尽量给出需要修改的文件来,方便那些遇到类似我这样的问题而又无从下手的新手们... 


具体参考链接如下: 
关于安装步骤:(前文已列出一部分) 
http://www.cnblogs.com/zilongshanren/archive/2012/04/28/2473282.html 
http://www.raywenderlich.com/5527/getting-started-with-android-development 
http://www.raywenderlich.com/11283/cocos2d-x-for-ios-and-android-getting-started 

关于No configs match configSpec: 
http://blog.zhukunqian.com/?p=357 

关于Don't support gles2.0: 
http://stackoverflow.com/questions/12203918/failure-in-running-helloworld-cocos2dx 
http://www.cocos2d-x.org/boards/6/topics/12563 
https://github.com/cocos2d/cocos2d-x/issues/1080 
http://developer.android.com/tools/devices/emulator.html#accel-graphics 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值