感谢一碗豆腐向我推荐。
android模拟器是模拟ARM的,速度很慢,大家经常用X86版的模拟器,速度给力,但是虚拟机什么的太麻烦。其实可以直接用SDK里的X86模拟器并使用intel提供的加速驱动,方法如下:
1)首先你必须是intel的CPU,且支持VT技术(比如i3、i5、i7)。确认在BOIS里开启了CPU VT技术和Execute Disable技术,系统的数据执行保护DEP功能已开启(windows)。
2)更新你的android SDK manager,下载安装android4.2(2.3等版本也有)分支下的Intel x86 Atom System Image。如图:
3)下载并安装Intel HAXM(支持WINDOWS、MAC OSX、Linux,自己下载对应版本),这个在SDK Manager里Extra分支下也有下载,不过建议下载官方提供的最新版本,地址:http://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager
4)打开AVD管理器,新建一个刚刚下载的X86模拟器(选择对应的SDK版本后,CPU选X86即可),如图:
大功告成。实验一下,速度,尤其是模拟器启动速度确实提升不少。据说兼容性会有问题,相信只要是你原生的JAVA开发,不用影响兼容性的NDK混编(壮哉我大JAVA),就绝对不会有问题。
补充1:android SDK里提供了2.3.3的X86模拟器镜像,但是经过测试这个镜像不能正常工作,而且4.2的X86镜像运行速度相对较慢。各位可以去Intel网站下载2.3.7的X86镜像,这个镜像SDK里是不提供的,需要手动下载然后复制到SDK的add-ons目录下。经测试,X86的2.3.7模拟器运行非常完美,速度飞快。下载地址:http://software.intel.com/en-us/articles/android-237-gingerbread-x86-emulator-image-add-on/
补充2:windows下,如果安装HAXM提示Execute Disable (XD) Bit没有开启,说明你的系统没有开启数据执行保护DEP功能。开启方法,我的电脑属性-高级-启动和鼓掌修复-设置-点击编辑按钮,将系统启动数据保护选项NoExecute=alwaysOff改为NoExecute=optin,重启即可。
更多内容请关注我的独立博客:www.leestorm.com