MacBook升級到OSX 10.13 下執行Android Simulator失敗的一種解決方案
作者:天涯來客:iOS_Android 開發專案技術服務
一、背 景
MacBook配置如下:
之前的OSX版本為 10.6,Android studio在此版本下Emulator執行正常。
由於目前OSX版本已升級為10.13,官方要求iOS APP支援11.0,因此Mac被迫升級到10.13。見下圖。
對於iOS環境沒有多大影響,接下的問題來了,發現Android Emulator無法執行,報錯如下:
Troubleshoot
Intel HAXM is required to run this AVD
/dev/kvm is not found
Enable VT-x in your BIOS security settings,ensure that your linux distro haworking KVM module。
二、解決方案
經過核查,需要修改系統的BIOS配置,對於Windows環境,BIOS很好修改,但對MacBook並不叫BIOS,而是有一個類似的設定是EFI設定,網路上有很多解決方案:大部分都要求updateMacBook Pro EFI韌體(firmware)。
在搜尋網上解決方案時發現如下解釋:
--------------------
VT-X是CPU虛擬化技術,可以在BIOS裡開啟:
- 開機按DEL,進入BIOS,這是Windows設定虛擬化的的操作方案;
- BIOS中依次選擇:Advanced(高階)——CPU Configuration——Secure Virtual Machine,設定為:Enabled(啟用)就行了。
- 不過BIOS中預設是開啟的,因此不需要手動開啟。
- --------------------
- 對於MacBook,如果使用了Intel晶片,最簡單的開啟虛擬化的操作方法是從Intel官方下載IntelHAXM_6.X.X.dmg。不同的OSX版本的版本可能有差異,需要在自己的Mac上核對。
筆者的MAC中IntelHAXM位置如下:
/Users/username/Library/Android/sdk/extras/intel/Hardware_A
用ls命令核對為IntelHAXM_6.2.1.dmg
MacBook-Pro:Hardware_Accelerated_Execution_Manager xsnai$ ls
HAXM installationpackage.xml
IntelHAXM_6.2.1.dmgsilent_install.sh
Release Notes.txtsilent_install_readme.txt
MacBook-Pro:Hardware_Accelerated_Execution_Manager xsnai$
可以在Terminal命令列執行IntelHAXM_6.2.1.dmg或者在視覺化目錄直接執行:
重新載入Simulator,APP在Simulator執行正常:
如果Macbook沒有找到IntelHAXM_6.2.1.dmg,建議從Intel官方網站下載安裝。
Intel官網地址:https://software.intel.com/en-us/search/site/language/en?query=IntelHAXM_
參考:https://stackoverflow.com/questions/26521014/intel-x86-emulator-accelerator-haxm-installer-vt-nx-not-enabled