在Mac OS X上使用HAXM加速Android Emulator

简介:

现在换了Mac Air作为工作笔记本,偶尔还是会在Mac上使用Android Emulator跑跑Android App之类的;为了解决Emulator启动和运行很慢的问题,当然使用以前同事对Mac上android emulator进行加速的软件HAXM(Hardware Accelerated Execution Manager)。HAXM利用硬件上的Intel VT技术,加速emulator的运行,类似于KVM加速QEMU。
本文中的Mac系统是10.8.4;HAXM版本是1.0.6。
注意:目前最新的HAXM版本在最新的(2013.10.22发布的)Mac OS X 10.9 “Mavericks”不能正常运行哦,得等HAXM的新版本吧。(2013.11.13:Intel已经推出了最新版本的HAXM,针对Mac OS X 10.9做了一个hotfix,已经可以正常使用了,可以到官方网站下载:http://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager/ )

使用的基本步骤如下(更详细的,请阅读本文后面的参考资料):
1. 下载和安装HAXM
下载地址为:http://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager/
(或者使用Andorid SDK Manager来选择下载)
其安装步骤,也没啥特别的,和多数Mac程序一样,一步一步安装即可。

2. 查看HAXM:
安装好HAXM后,默认就是真长使用了,可以使用如下命令查看HAXM是否在运行:

View Code BASH
1 2 
jay@Jay-Air:~ $kextstat | grep intel 109 0 0xffffff7f820d3000 0x11000 0x11000 com.intel.kext.intelhaxm (1.0.6) <7 5 4 3 1>


3. 启动和停止HAXM:
启动和停止HAXM的命令如下:

View Code BASH
1 2 3 4 5 
# Start: sudo kextload –b com.intel.kext.intelhaxm   #Stop: sudo kextunload –b com.intel.kext.intelhaxm

4. 在Eclipse(ADT)中使用HAXM加速:
如果已经确认HAXM模块已经加载,则Emulator就会默认使用它。
在Eclipse中使用Emulator运行App时,会看到“HAX is working and emulator runs in fast virt mode”的打印信息。

View Code BASH
1 2 3 4 5 6 7 
[2013-10-23 00:02:46 - App2] ------------------------------ [2013-10-23 00:02:46 - App2] Android Launch! [2013-10-23 00:02:46 - App2] adb is running normally. [2013-10-23 00:02:46 - App2] Performing com.jay.app2.MainActivity activity launch [2013-10-23 00:02:46 - App2] Automatic Target Mode: launching new emulator with compatible AVD 'Android-4.3' [2013-10-23 00:02:46 - App2] Launching a new emulator with Virtual Device 'Android-4.3' [2013-10-23 00:02:47 - Emulator] HAX is working and emulator runs in fast virt mode

用命令行启动Emulator也是一样可以默认使用HAXM的。

根据本人的体验,在Mac上我的一个image在emualtor启动中不用HAXM,启动时间超过2分钟,使用HAXM时,启动时间约20~30秒。可见HAXM的加速功能还是很明显的;不过,我感觉还是我在Ubuntu上使用KVM加速Android Emulator更快一些,启动时间一般在10秒左右。

注意:使用HAXM的Emulator可能出现卡住,不能弹出模拟器窗口,这可能是与本机运行的VirtualBox冲突的问题(我就遇到了问题),将VirtualBox关闭即可正常了。后来发现Intel官方网站已经对该问题进行了描述。
Known issue:
The Android Emulator may freeze when HAXM and VirtualBox v4.2.14 and newer are run in parallel on the same machine. Our testing shows that previous versions of VirtualBox, v4.2.12 and earlier, don’t exhibit the issue.

目录
相关文章
|
3月前
|
安全 Android开发 数据安全/隐私保护
请说明鸿蒙操作系统与其他操作系统(如Android和iOS)的主要区别。
请说明鸿蒙操作系统与其他操作系统(如Android和iOS)的主要区别。
58 1
|
3月前
|
Java Linux Android开发
Android基础知识:解释什么是Android(安卓)操作系统?
Android基础知识:解释什么是Android(安卓)操作系统?
147 0
|
7月前
|
开发工具 Android开发
Mac 安卓(Android) 配置adb路径
Mac 安卓(Android) 配置adb路径
211 0
|
4月前
|
iOS开发 MacOS
MAC OS更新系统后IDEA中的SVN报错无法使用
MAC OS更新系统后IDEA中的SVN报错无法使用
|
4月前
|
XML Android开发 数据格式
Android 自定义View 之 Mac地址输入框(下)
Android 自定义View 之 Mac地址输入框(下)
|
4月前
|
XML Java Android开发
Android 自定义View 之 Mac地址输入框(上)
Android 自定义View 之 Mac地址输入框(上)
|
7月前
|
Android开发
MAC 安卓(Android) 编辑器无法识别真机
MAC 安卓(Android) 编辑器无法识别真机
120 0
|
7月前
|
Android开发 iOS开发 流计算
Mac 安卓(Android) 安装 Genymotion 模拟器
Mac 安卓(Android) 安装 Genymotion 模拟器
335 0
|
7月前
|
前端开发 安全 Go
在Mac OS X上运行Go语言的GUI程序
在Mac OS X上运行Go语言的GUI程序
200 3
|
8月前
|
Android开发 Windows
Mac 好用的 Android 模拟器整理(玩游戏、装应用、支持咸鱼、拼多多...)
Mac 好用的 Android 模拟器整理(玩游戏、装应用、支持咸鱼、拼多多...)
9006 47