最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【已解决】Android的模拟器,在ADT中调试运行AVD时,速度太慢,极其的慢

Android crifan 18932浏览 0评论

【问题】

虽然当前主机配置很高:

Intel的i5的4核 + 8G内存 + SSD的硬盘

Eclipse的ADT,调试代码时,所运行的AVD模拟器,速度极其的慢。

加载到主界面,也要个几分钟。

每次调试一次,都得等半天,烦死了。

【解决过程】

1.一搜,网上果然N多人遇到同样问题。

2.参考:

Slow Android emulator

去修改对应的AVD:

debug configurations

manager avd

edit this avd

把内存改为2G,再把snapshot选上:

use snapshot and 2g mem size

然后去试试效果,结果点击调试,无法启动AVD了,详细折腾过程参见:

【已解决】Android ADT中增大AVD内存后无法启动:emulator failed to allocate memory 8

其结果是:

即使可以手动修改,绕过bug,使得设置为1024MB,但是实际的运行速度,还是很慢。

启动一次,要等个很多分钟,还是不能接受的慢。

3.另外之前那个帖子中提到了有个:

Android x86

据说速度极快。几乎完美。有空可以试试。

4.另外,有空再参考其中的:

Install Intel Hardware Accelerated Execution Manager (HAXM):

http://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager/

去试试,貌似会有效果的。

 

5.好像后面提到的这些:

http://developer.android.com/tools/devices/emulator.html#vm-windows

http://developer.android.com/tools/devices/emulator.html#accel-vm

更加有用。是android官网的解释。

所以,看来还是,参考:

Using the Android Emulator

去从头到尾,好好看看。

其中,有待后期注意的是:

(1)此处我装了VirtualBox,据文档说,需要先卸载VirtualBox,否则会影响此处的虚拟化加速的;

(2)需要是x86的Image,不能是arm的Image;

去确认一下,果然之前的AVD都是for ARM的:

cpu abi is arm

所以,去新建一个x86的。

6. 但是结果却发现,无论选择哪个Device,结果Target基本都是Android 4.2,然后坑爹的是CPU/ABI都是ARM,而且无法更改:

cpu abi can not change

教程是说,选先选Target,然后再选CPU/ABI,但是此处Target只有 Android 4.2,没有其他可选的啊;

而且无论如何,CPU/ABI都还是灰色的,无法改的。。。

然后也去试过了,新建Device:

new device x86

然后再去新建AVD,用这个新建的try_x86,结果还是无法更改CPU:

use try_x86 avd still can not change cpu

后来才想起来,好像是当前的“System Image”是ARM的,所以,需要重新安装一个X86的“System Image”。

7.所以去使用Android SDK Manager去安装X86的System Image,详细过程参见:

【记录】ADT中使用Android SDK Manager安装X86的System Image

8.等安装完毕了对应的X86的Image后,然后才可以去创建x86的AVD的。

can create new x86 avd

created x86 avd

9.然后再去下载并安装Haxm (Intel Hardware Accelerated Execution Manager),详细过程参见:

【记录】ADT中通过Android SDK Manager安装Intel Hardware Accelerated Execution Manager(Haxm)    

 

10.验证安装haxm成功后,把之前创建的X86的AVD,设置为启动设备,然后启动调试,看看效果。

结果,此时发现,此处的之前创建的x86_480x800的AVD,竟然出错了,说是啥Unknown Target,折腾过程参见:

【已解决】AVD Manager中之前正常的某个X86的AVD出错:Error: Unknown target 'android-16' in xxx.ini    

 

11.继续去,先设置好上述的X86的AVD为启动设备,然后去调试:

select x86 as avd

看看是否速度有提升。

结果log中显示出一行红色字体:

hax is working and emulator runs in fast virt mode

hax is working and emulator runs in fast virt mode

最后自己数了数,从点击Debug到最后看到Android的AVD的主界面:

spend 12 sec to ui

大概花了12秒,算是比较快了。

至少和之前按分钟算的那个速度,有天壤之别了。

【总结】

至此,貌似基本算是成功了,成功的,加速了Android模拟器的调试的速度。

从大概多少分钟,到12秒左右。

虽不完美,但已基本可以接受了。

提示:

1.此处我没用那个snapshot;

2.后续调试时,已明显感觉到,模拟器执行程序,调试代码等等的速度,的确是明显快多了。爽就一个字。哈哈哈。

提示:

1.根据网友stophin的经验:如果CPU不支持VT-x的话,HAXM是安装不上的。请小伙伴自行注意。

转载请注明:在路上 » 【已解决】Android的模拟器,在ADT中调试运行AVD时,速度太慢,极其的慢

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (14)

  1. 我已经按照楼主的方法配置成功了,也能运行,但是为什么还是很慢呐
    andy9年前 (2015-11-13)回复
  2. 我目前已經能夠用X86的CPU了,不過又遇到新的問題, APK無法安裝,不知道樓主有沒有方法解決這個問題,
    SAM9年前 (2015-07-20)回复
    • 不清楚。目前没时间继续折腾。以后有空再折腾,到时候才知道结果。
      crifan9年前 (2015-07-21)回复
  3. 请问博主,右侧的按钮怎么隐藏掉的?我取消了Hardware Keyboard present的勾选也没用。
    清风渡月10年前 (2014-07-25)回复
    • 取消了应该是可以隐藏的啊。你重新建个AVD试试就知道了。
      crifan10年前 (2014-07-28)回复
  4. 大赞啊.. 谢谢楼主..
    manyou11年前 (2014-05-07)回复
  5. 哥们,你说你从debug到加载主界面不到12秒!? 我试了一下API19的,快两分钟。。。
    风尘仆11年前 (2014-03-09)回复
  6. 博主,搜这个问题来到你的博客,发现你的这篇被chinambs抓了,http://www.chinambs.com/a/jishuziliao/Androidkaifa/2013/1123/233.html
    myth11年前 (2014-02-18)回复
    • 谢谢告知。我之前就已经知道了:我的网站的帖子,有被很多个别的博主或网站转载,很多也都是没有加上我的原帖地址的。。。这就是中国的现状。。。
      crifan11年前 (2014-02-19)回复
  7. 楼主,我折腾了半天原来CPU是core T6600的不支持VT-x结果haxm装不上, 还请楼主注明一下,不要让其他小伙伴瞎忙活了...
    stophin11年前 (2014-02-16)回复
  8. 偶像啊!你太帅气了。。能教教我怎么弄么。我老是失败。。。
    小强11年前 (2014-01-08)回复
  9. 非常不错,使用IntelHAXM体验非常棒。
    arthur11年前 (2013-08-29)回复
  10. 楼主好厉害,我一步一步照着你说的做,终于解决了困扰我多时的这个问题。谢谢!
    netboygg12年前 (2013-06-23)回复
  11. 受教了!很详细!博主很能折腾哈哈!
    wangyixiang12年前 (2013-02-18)回复
88 queries in 0.202 seconds, using 22.18MB memory