1、提出问题

遇到过这样的一个问题:我将cocos2dx程序移植到Android项目中去后,想通过Android虚拟机来进行调,但是运行虚拟机后,出现如下错误:

Unfortunately,MyTesthasstopped.

这是因为:cocos2dx需要OpenGL进行渲染,而Android虚拟机没有这个东西,所以需要启用硬件的渲染器进行渲染,即GPU。

在老版本的Android SDK中,使用AVD创建虚拟机,是有勾选“Use Host GPU”这个选项的。

也就是使用主机的GPU进行渲染。


可是Android SDK 22以上的版本,使用AVD创建Android虚拟机是这样的:

可以发现,“Use Host GPU”这个选项已经没有了。

那怎么办呢?难道就不能用Android虚拟机来调试cocos2dx的程序了吗?

2、解决方法

当然有办法啦,请大家相信博主,博主会告诉大家如何再现“User Host GPU”。

请耐心往下看:


(1)首先,使用AVD正常创建一个Android虚拟机。当然这时候还没有开启GPU渲染。


(2)创建完虚拟机后,进入“ C:\Users\Administrator\.android\avd\avd.avd ”(每个人的路径可能不一样,不过就是在C:\User\***\.android\中就是了)。

找到avd.avd路径下的config.ini文件,用记事本打开它!

注意:“avd”是我创建的虚拟机的名字,大家要注意了,不要说找不到avd文件夹。


(3)添加一行代码,开启GPU渲染“ hw.gpu.enabled=yes ”。


OK,只要三步骤,即可开启GPU渲染,是不是很简单呀。


3、其他

还有两个参数需要注意一下,可能用的到:

(1)keyboard lid support :模拟器物理键盘,设为yes,表示模拟器物理键盘可用;

(2)keyboard support :电脑键盘,设为yes,电脑键盘可用。