共用方式為


如何使用 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 開始不再支援,並已由 Intel 處理器上的 AEHD 替代。 如需在模擬器 32.x.x.x 和更低版本上使用 HAXM 的相關資訊,請參閱在 developer.android.com 上的 Windows 上使用 Intel HAXM 設定 VM 加速

為了在 Windows 上獲得最佳體驗,建議您使用 WHPX 來加速 Android 模擬器。 如果您的計算機上沒有 WHPX,則可以使用 AEHD。 如果符合下列條件,Android 模擬器會自動使用硬體加速:

  • 硬體加速可在您的開發電腦上使用並啟用。
  • 模擬器正在執行針對 x86-64x86 型虛擬裝置建立的系統映像。

這很重要

虛擬機器 (VM) 加速模擬器可以在另一個 VM 內執行,包括 Microsoft Dev Box,前提是在 VM 中啟用巢狀虛擬化。

Windows ARM 裝置限制

Android 模擬器目前需要 x64 處理器架構,且 Windows ARM 裝置不支援。 此限制會影響裝置,例如:

  • Surface Pro X
  • Surface Pro 9(5G/ARM 變體)
  • 其他配備 ARM64 處理器的 Windows 裝置(Snapdragon 等)

如果您使用的是 Windows ARM 裝置,請考慮下列替代方案:

  • 使用實體 Android 裝置透過 USB 偵錯進行測試。 如需詳細資訊,請參閱 設定 Android 裝置以進行偵錯
  • 使用基於雲端的測試服務或具有 x64 架構的遠端開發環境。
  • 如果可用,請考慮使用適用於 Android 的 Windows 子系統 (WSA),但與 Android 模擬器相比,這具有不同的限制和功能。

如要瞭解 Android 模擬器規定的最新資訊,請參閱 developer.android.com 上的 Android 模擬器規定

如需使用 Android 模擬器啟動和偵錯的相關資訊,請參閱 在 Android 模擬器上偵錯

利用 Hyper-V 提升速度

在啟用 Hyper-V 之前,請閱讀以下部分以驗證您的計算機是否支持 Hyper-V。

驗證對 Hyper-V 的支援

Hyper-V 在 Windows Hypervisor 平台上執行。 若要搭配 Hyper-V 使用 Android 模擬器,您的電腦必須符合下列條件才能支援 Windows Hypervisor 平台:

  • 您的電腦硬體必須符合下列需求:

    • 支援虛擬化技術(VT-x)、擴展分頁表(EPT)和無限制客體(UG)功能的英特爾處理器。 必須在電腦的 BIOS 中啟用 VT-x。
    • AMD 處理器:推薦 AMD Ryzen 處理器。 必須在電腦的 BIOS 中啟用虛擬化或 SVM。
  • 您的電腦必須執行 Windows 11 或 Windows 10 1909 版或更新版本的企業版、專業版或教育版。

若要驗證您的電腦硬體和軟體是否與 Hyper-V 相容,請開啟命令提示字元並鍵入以下命令:

systeminfo

如果列出的所有 Hyper-V 需求值都為 [是],則您的電腦可以支援 Hyper-V。 例如:

檢查 .NET MAUI 的 Hyper-V 支援時的 systeminfo 輸出範例。

如果 Hyper-V 結果指出 Hypervisor 目前正在執行,則表示已啟用 Hyper-V。

這很重要

如果 Windows 在虛擬機器內執行,則必須在主機 Hypervisor 中啟用巢狀虛擬化。

在 Windows 中啟用 Hyper-V 加速

如果您的電腦符合上述條件,請使用以下步驟使用 Hyper-V 加速 Android 模擬器:

  1. 在 Windows 搜尋方塊中輸入 Windows 功能,然後在搜尋結果中選取 [開啟或關閉 Windows 功能]。[Windows 功能 ] 對話方塊中,同時啟用 Hyper-VWindows Hypervisor 平臺

    啟用適用於 .NET MAUI 的 Hyper-V 和 Windows Hypervisor 平臺。

    進行這些更改後,重新啟動計算機。

    這很重要

    在 Windows 10 October 2018 Update (RS5) 及更高版本上,您只需啟用 Hyper-V,因為它會自動使用 Windows Hypervisor Platform (WHPX)。

  2. 請確定您在 Android 裝置管理員中建立 的虛擬裝置是 x86-64x86 型系統映像。 如果您使用 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 模擬器:

  1. 在 Visual Studio 中,選取 [工具] [ > Android > Android SDK 管理員...] 功能表項目。

  2. [Android SDK 和工具] 視窗中,選取 [工具] 索引標籤。

  3. [工具] 索引標籤中,展開 [額外內容],勾選 [Android 模擬器 Hypervisor 驅動程式 (安裝程式)] 項目的核取方塊,然後選取 [套用變更 ] 按鈕:

    透過 Visual Studio 中的 Android SDK 管理員安裝 AEHD。

    備註

    或者,可以從 GitHub 下載並安裝 AEHD。 解壓縮驅動程式套件後,以管理員權限在命令列上執行 silent_install.bat

  4. 請確定您在 Android 裝置管理員中建立 的虛擬裝置是 x86-64x86 型系統映像。 如果您使用 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
    

這很重要

在卸載 AEHD for AMD 之前,請關閉所有 x86 模擬器。

Troubleshoot

如需協助排解硬體加速問題,請參閱 Android 模擬器 疑難排解 指南。