加速你的安卓模擬器,讓開發更迅速
我看到一篇文章聲稱:使用英特爾的硬件加速執行管理器(HAXM)驅動可以對安卓模擬器進行加速。這讓我很興奮,所以決定去驗證這個說法。這篇博文就是我驗證的過程。
我使用的工具:
- Andorid SDK r20.0.3
- Intellij Community Edition 11.1.3
根本上說,這個特別的“加速”來自Intel一個特別的“x86 Atom System Image”,這個東西利用HAXM驅動可以讓模擬器有更好的表現。在這里我不會重復一些技術的細節,你可以進入下面的鏈接查看更多信息。
警告:這個技巧僅在Intel的硬件下實現,而且需要同時啟用“Virtualization Technology for Directed I/O (VT-d)”(一般通過BIOS進行設置)。
此外, “x86 Atom System Image”目前(這篇博客發布的時候)僅支持下列安卓版本,2.3.3 (Gingerbread), 4.0.3 (ICD)以及4.1 (Jelly Bean)
在開始前,請將環境變量ANDROID_SDK_HOME設置為對應Android SDK的根目錄。這樣可以避免許多令人頭痛的問題。
執行步驟:
- 通過Android SDK Manager下載并安裝相關的包。
- 創建一個安卓虛擬設備(AVD)。
- 在IntelliJ CE里建立一個Android Module Project。
- 用AVD測試部署安卓應用。
1、通過Android SDK Manager下載相關的包
啟動SDK Manager并確認下面的東西已經安裝就緒:
- Intel x86 Atom System Images(下面顯示的是Android2.3.3版本)
- Intel x86 Emulator Accelerator (HAXM)
接下來,你需要手動安裝HAXM driver。在Android SDK的根目錄下,找到extras\intel\Hardware_Accelerated_Execution_Manager,執行
IntelHaxm.exe進行安裝。
2、創建一個安卓虛擬設備(AVD)
啟動AVD Manager并創建兩個配置相同但安卓版本不同的AVD:
- DefaultAVD233 – Android 2.3.3 – API Level 10
- IntelAVD233 – Intel Atom x86 System Image (Intel Corporation) – API Level 10
3.在IntelliJ CE里建立一個Android Module Project
在IntelliJ里,新建一個Android Module類型項目。
在”Android SDK”下選擇合適的Android platform。你需要指向你Android SDK下的根目錄才能選擇合適的構建版本,如下圖所示選擇Android2.3.3
確保“Target Device”選項設置成模擬器,然后點擊“finish”完成。
4、使用AVD測試部署安卓應用
首先使用默認的Android2.3.3 AVD。
在IntelliJ的菜單欄上,選擇”Run’>‘Edit Configurations…”,找到”Target Device”,在”Prefer Android Virtual Device”選項上選擇”DefaultAVD233″。
然后運行這個安卓應用。過一會就可以看到虛擬器窗口顯示”Hello World”信息。
要用Intel AVD來運行應用,就選擇”IntelAVD233″。
讓人興奮的是,模擬器啟動的速度(包括從IntelliJ點擊”Run”到顯示”Hello World”信息到模擬器上)發生了改變。下面是我用筆記本(Intel i3 380M、3GB RAM)記錄的大致時間:
- DefaultAVD233:1分7秒
- IntelAVD233:35秒
哇,這樣的提升(大約快了50%)是在還沒有調整其它參數的情況下得到的。
原文鏈接: javacodegeeks 翻譯: hanson