如何使用 Android 模擬器啟用硬體加速(Hyper-V 和 AEHD)
使用 Visual Studio,您可以在模擬器中輕鬆測試及偵錯適用於 Android 的 .NET MAUI 應用程式,以取得 Android 裝置無法使用的情況。 不過,如果硬體加速無法使用或啟用,模擬器將會非常緩慢地執行。 您可以藉由啟用硬體加速,以及使用適用於處理器架構的虛擬設備映像,大幅改善模擬器的效能。 如需詳細資訊,請參閱 在 developer.android.com 上設定 Android 模擬器 的硬體加速。
模擬器提供多功能的網路功能,可用於不同的用途,包括從 Windows 虛擬機 (VM) 內連線到 Mac 上執行的模擬器。 如需詳細資訊,請參閱 從 Windows 虛擬機內部連線到 Mac 上的 Android 模擬器。
在macOS上,Android 模擬器會使用內建 Hypervisor.Framework。 如需詳細資訊,請參閱 developer.apple.com 上的 Hypervisor 。
在 Windows 上加速 Android 模擬器
下列虛擬化技術可用於加速 Windows 上的 Android 模擬器:
- Windows Hypervisor 平臺 (WHPX) 。 Hyper-V 是 Windows 的虛擬化功能,可讓您在實體主機電腦上執行虛擬化的電腦系統。
- Android 模擬器 Hypervisor 驅動程式 (AEHD)。
注意
Intel 硬體加速執行管理員 (HAXM) 已從模擬器 33.x.x.x.x 取代,並已由 Intel 處理器上的 AEHD 取代。 如需在模擬器 32.x.x.x.x.x 和更低版本上使用 HAXM 的相關信息,請參閱 在 windows 上設定 VM 加速,developer.android.com。
為了在 Windows 上獲得最佳體驗,建議您使用 WHPX 來加速 Android 模擬器。 如果您的電腦上無法使用 WHPX,則可以使用 AEHD。 如果符合下列準則,Android 模擬器會自動使用硬體加速:
- 您的開發電腦有提供並已啟用硬體加速。
- 模擬器正在執行針對 x86-64 或 x86 型虛擬設備建立的系統映像。
重要
虛擬機 (VM) 加速模擬器可以在另一個 VM 內執行,包括Microsoft開發箱,前提是 VM 中已啟用巢狀虛擬化。
如需使用 Android Emulator 啟動和偵錯的資訊,請參閱 Debugging on the Android Emulator (在 Android Emulator 上偵錯)。
使用 Hyper-V 加速
在啟用 Hyper-V 之前,請先閱讀下列章節,確認您的電腦支援 Hyper-V。
確認 Hyper-V 的支援
Hyper-V 是在 Windows Hypervisor 平台上執行。 若 Hyper-V 要與 Android Emulator 搭配使用,您的電腦必須符合下列準則,以支援 Windows Hypervisor 平台:
您的電腦硬體必須符合下列需求:
- 支援虛擬化技術 (VT-x)、擴充頁面表 (EPT) 和不受限制的客體 (UG) 功能的 Intel 處理器。 VT-x 必須在計算機的BIOS 中啟用。
- AMD 處理器:建議使用 AMD Ryzen 處理器。 您必須在電腦的 BIOS 中啟用虛擬化或 SVM。
您的計算機必須執行 Windows 11 或 Windows 10 版本 1909 或更新版本的企業版、專業版或教育版。
若要確認電腦的軟硬體是否與 Hyper-V 相容,請開啟命令提示字元並鍵入下列命令:
systeminfo
如果所有列出的 Hyper-V 需求值皆為 Yes,則表示您的電腦可支援 Hyper-V。 例如:
如果 Hyper-V 結果指出 Hypervisor 目前正在執行中,則 Hyper-V 已經啟用。
重要
如果 Windows 是在虛擬機內執行,則必須在主機 Hypervisor 中啟用巢狀虛擬化。
在 Windows 中啟用 Hyper-V 加速
如果您的電腦符合上述準則,請使用下列步驟,使用 Hyper-V 來加速 Android Emulator:
在 Windows 搜尋方塊中輸入 Windows 功能,然後在搜尋結果中選取 [開啟或關閉 Windows 功能]。 在 [Windows 功能] 對話方塊中,同時啟用 Hyper-V 與 Windows Hypervisor 平台:
進行這些變更之後,請重新啟動電腦。
重要
在 Windows 10 2018 年 10 月更新 (RS5) 與更高版本中,您只需要啟用 Hyper-v,原因是其會自動使用 Windows Hypervisor 平台 (WHPX)。
請確定您在 Android 裝置管理員 中建立的虛擬裝置是 x86-64 或 x86 型系統映射。 如果您使用 Arm 型系統映像,虛擬裝置將不會加速,而且會緩慢執行。
啟用 Hyper-V 之後,您將能夠執行加速的 Android 模擬器。
使用 AEHD 加速
如果您的電腦不支援 Hyper-V,您應該使用 AEHD 來加速 Android 模擬器。 安裝並使用 AEHD 之前,請閱讀下一節以確認您的電腦是否支援 AEHD。
確認 AEHD 的支援
您的電腦必須符合下列準則才能支援 AEHD:
- 具有虛擬化延伸模組的 Intel 或 AMD 處理器,必須在 BIOS 中啟用。
- 64 位 Windows 11 或 Windows 10。
- Hyper-V 必須關閉。
注意
Windows 中的數個功能會隱含地啟用 Hyper-V。 如需詳細資訊,請參閱 在 developer.android.com 上停用 Hyper-V 時進行雙重檢查。
在 Windows 中啟用 AEHD 加速
如果您的電腦符合上述準則,請使用下列步驟來加速使用 AEHD 的 Android 模擬器:
在 Visual Studio 中,選取 [工具 > Android > Android SDK 管理員... ] 功能表項。
在 [Android SDK 和工具] 視窗中,選取 [工具] 索引標籤。
在 [工具] 索引標籤中,展開 [額外專案],勾選 [Android 模擬器 Hypervisor 驅動程式] 專案的複選框,然後選取 [套用變更] 按鈕:
注意
或者,您可以從 GitHub 下載並安裝 AEHD。 解除封裝驅動程式套件之後,請使用系統管理員許可權在命令行執行
silent_install.bat
。請確定您在 Android 裝置管理員 中建立的虛擬裝置是 x86-64 或 x86 型系統映射。 如果您使用 Arm 型系統映像,虛擬裝置將不會加速,而且會緩慢執行。
AEHD 2.1 和更新版本
安裝之後,請使用下列命令確認驅動程式正常運作:
sc query aehd
如果驅動程式正常運作,狀態消息會包含下列資訊:
SERVICE_NAME: aehd
...
STATE : 4 RUNNING
...
下列錯誤訊息表示您的 BIOS 中未啟用虛擬化擴充功能,或未停用 Hyper-V:
SERVICE_NAME: aehd
...
STATE : 1 STOPPED
WIN32_EXIT_CODE : 4294967201 (0xffffffa1)
...
安裝並執行 AEHD 之後,您將能夠執行加速的 Android 模擬器。
AEHD 2.0 和更低
安裝之後,請使用下列命令確認驅動程式正常運作:
sc query gvm
如果驅動程式正常運作,狀態消息會包含下列資訊:
SERVICE_NAME: gvm
...
STATE : 4 RUNNING
...
下列錯誤訊息表示您的 BIOS 中未啟用虛擬化擴充功能,或未停用 Hyper-V:
SERVICE_NAME: gvm
...
STATE : 1 STOPPED
WIN32_EXIT_CODE : 4294967201 (0xffffffa1)
...
安裝並執行 AEHD 之後,您將能夠執行加速的 Android 模擬器。
卸載 AEHD
若要卸載 AEHD,請在具有系統管理員許可權的命令行中使用下列命令:
AEHD 2.1 和更新版本
sc stop aehd sc delete aehd
AEHD 2.0 和更低
sc stop gvm sc delete gvm
重要
卸載適用於 AMD 的 AEHD 之前,請先關閉任何 x86 模擬器。
疑難排解
如需針對硬體加速問題進行疑難排解的說明,請參閱 Android Emulator 的疑難排解指南。