• 趣编程,专注优质IT资源分享

  • 网站资源全部免费下载,详情点击右上角积分获取查看

  • 希望趣编程可以助在你的学习路上一臂之力

  • 网站最近会更新一些安卓开发的入门教程,感兴趣的朋友点击:平台开发——移动开发

  •    4年前 (2016-03-08)  干货教程 |   抢沙发  173 
    文章评分 0 次,平均分 0.0

    【问题】

    虽然当前主机配置很高:

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

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

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

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

    【解决过程】

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

    2.参考:

    Slow Android emulator

    去修改对应的AVD:

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

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

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    然后去试试效果,结果点击调试,无法启动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的:

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    所以,去新建一个x86的。

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

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

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

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

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

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

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

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    后来才想起来,好像是当前的“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的。

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    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为启动设备,然后去调试:

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

    看看是否速度有提升。

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

    hax is working and emulator runs in fast virt mode

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

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

    Eclipse的Android的模拟器,在ADT中调试运行慢速解决方案

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

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

    【总结】

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

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

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

    提示:

    1.此处我没用那个snapshot;

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

    提示:

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

     

    网站所有资源均免费下载,详情点击右上角积分获取 除特别注明外,本站所有文章均为趣编程原创,转载请注明出处来自https://www.qubiancheng.cn/1117.html

    关于

    发表评论

    表情 格式

    暂无评论

    友情链接

    切换注册

    登录

    忘记密码 ?

    您也可以使用第三方帐号快捷登录

    切换登录

    网站本地注册功能正在维护中,请选择QQ登录或者微博登录。

    扫一扫二维码分享