正如上一篇文章所说,新组装了一部电脑,装了正版的Windows7 64bit SP1,Eclipse J2EE Juno+AndroidSDK,创建Android的HelloActivity测试程序的时候竟然出现了这样的场景:

emulator-arm.exe已停止工作

不知道是什么情况的我只好上网找了几个帖子来查一下这个缘由。

查到了这样一个帖子,帖子中说了两点:

1,在创建avd的时候,它的name就像是java中创建class一样,首字母一定要大写,要不然系统就不能识别出来,就会出现无法写入的情况。 2,就是在创建sdcard的时候,size 可以不进行设置,如果你没创建sdcard的话,那里设置也没用,主要是file那里要指向你所创建的sdcard的路径,也就是sdcard.mimg,这时候sdcard已经存在了,就不要在size里面输入sdcard大小,要不然就会出现上面所说的错误。

但是都不是我的问题。查来查去都是这几句话,但是峰回路转又看到了一个帖子,前几楼貌似是灌水楼,6楼说出了真相:

是显卡的问题。 启用avd用的GPU emulation可以解决

于是怒开GPU emulation,之后问题解决了,好神奇,不理解其中内幕。在这里简单介绍一下开启GPU emulation的方法,很简单:在建立AVD的时候,下方有一个Hardware选项,点击右边的New按钮,选择GPU emulation,确定,将Hardware表格中的GPU emulation改为yes即可。

解决之后还是有一点小问题,虽然avd启动了,但是关闭之后还是会出现上图所述的情况。但是鉴于暂时还未发现它影响程序运行与调试,暂且就不管他了,放在那里吧。发现解决办法之后我会在这里更新。

希望以后能明白这些是为什么。