如何使用 Android 模拟器启用硬件加速(Hyper-V 和 AEHD)

使用 Visual Studio,你可以在仿真器中轻松测试和调试面向 Android 的 .NET MAUI 应用,以应对没有 Android 设备的情况。 但是,如果硬件加速不可用或未启用,仿真器的运行速度会非常缓慢。 可以通过启用硬件加速并使用适用于处理器体系结构的虚拟设备映像来显著提高模拟器的性能。 有关详细信息,请参阅 在 developer.android.com 上为 Android Emulator 配置硬件加速。

该模拟器提供通用的网络功能,可用于不同的目的,包括从 Windows 虚拟机(VM)连接到 Mac 上运行的仿真器。 有关详细信息,请参阅从 Windows 虚拟机内部连接 Mac 上的 Android 模拟器。

在 Windows 上加速运行 Android Emulator

以下虚拟化技术可用于加速 Android Emulator:

  • Windows 虚拟机监控程序平台 (WHPX) Hyper-V 是 Windows 的虚拟化功能,使虚拟的计算机系统可以在物理主计算机上运行。
  • Android Emulator 虚拟机监控程序驱动 (AEHD)。

注意

从 Emulator 33.x.x.x 版本起,Intel 硬件加速执行管理器 (HAXM) 已经弃用,并且已由 Intel 处理器上的 AEHD 取代。 有关在 Emulator 32.x.x.x.x 和更低版本上使用 HAXM 的信息,请参阅 developer.android.com 上的在 Windows 上使用 Intel HAXM 配置 VM 加速

为了在 Windows 上获得最佳体验,建议使用 WHPX 来加速 Android Emulator。 如果计算机上没有 WHPX,则可使用 AEHD。 如果满足以下条件,Android Emulator 将自动使用硬件加速:

  • 硬件加速在开发计算机上可用并已启用。
  • 仿真器正运行为基于 x86-64 或 x86 的虚拟设备创建的系统映像。

重要

如果 VM 中启用了嵌套虚拟化,虚拟机(VM)加速模拟器可以在另一个 VM(包括 Microsoft Dev Box)中运行。

有关使用 Android Emulator 进行启动和调试的信息,请参阅 Android Emulator 调试

使用 Hyper-V 加速

在启用 Hyper-V 之前,请阅读以下部分以验证你的计算机是否支持 Hyper-V。

验证对 Hyper-V 的支持

Hyper-V 在 Windows 虚拟机监控程序平台上运行。 若要将 Android Emulator 与 Hyper-V 配合使用,计算机必须满足以下条件才能支持 Windows 虚拟机监控程序平台:

  • 计算机硬件必须满足以下要求:

    • 支持二级地址转换 (SLAT) 的 64 位 Intel 或 AMD Ryzen CPU。
    • CPU 支持 VM 监视器模式扩展(Intel CPU 上的 VT-c)。
    • 内存至少为 4 GB。
  • 在计算机的 BIOS 中,必须启用以下项:

    • 虚拟化技术(标签可能因母板制造商而不同)。
    • 硬件强制执行数据执行保护。
  • 你的计算机运行的操作系统必须是企业版、专业版或教育版的 Windows 11 或 Windows 10(版本 1909 或更高版本)。

要验证计算机硬件和软件是否与 Hyper-V 兼容,请打开命令提示符并键入以下命令:

systeminfo

如果列出的所有 Hyper-V 要求的值均为“是”,则计算机可以支持 Hyper-V。 例如:

Example of systeminfo output when checking Hyper-V support for .NET MAUI.

如果 Hyper-V 结果显示虚拟机监控程序当前正在运行,则表示 Hyper-V 已经启用。

重要

如果 Windows 在虚拟机内部运行,则必须在主机虚拟机监控程序中启用嵌套虚拟化。

在 Windows 中启用 Hyper-V 加速

若计算机符合上述条件,请执行以下步骤使用 Hyper-V 加速 Android Emulator:

  1. 在 Windows 搜索框中输入“Windows 功能”,然后在搜索结果中选择“打开或关闭 Windows 功能”。 在“Windows 功能”对话框中,启用“Hyper-V”和“Windows 虚拟机监控程序平台”

    Enabling Hyper-V and Windows Hypervisor Platform for .NET MAUI.

    进行这些更改后,重新启动计算机。

    重要

    在 Windows 10 2018 年 10 月更新(RS5) 及更高版本中,你只需启用 Hyper-V 即可,因为它将自动使用 Windows 虚拟机监控程序平台 (WHPX)。

  2. 请确保在 Android 设备管理器中创建的虚拟设备是基于 x86-64 或基于 x86 的系统映像。 如果使用基于 ARM 的系统映像,虚拟设备将无法加速并且运行缓慢。

启用 Hyper-V 后,你就可以运行加速的 Android Emulator。

使用 AEHD 加速

如果计算机不支持 Hyper-V,则应当使用 AEHD 加速 Android 模拟器。 在安装和使用 AEHD 之前,请阅读以下部分,以验证计算机是否支持 AEHD。

验证对 AEHD 的支持

计算机必须满足以下条件才能支持 AEHD:

  • 具有虚拟化扩展的 Intel 或 AMD 处理器,必须在 BIOS 中将其启用。
  • 64 位 Windows 11、Windows 10、Windows 8 或 Windows 7。
  • 必须关闭 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 Emulator 虚拟机监控程序驱动程序 (安装程序)”项的复选框,然后选择“应用更改””按钮:

    Installing AEHD through the Android SDK manager in Visual Studio.

    注意

    或者,可以从 GitHub 下载并安装 AEHD。 解压缩驱动程序包后,使用管理员权限在命令行中运行 silent_install.bat

  4. 请确保在 Android 设备管理器中创建的虚拟设备是基于 x86-64 或基于 x86 的系统映像。 如果使用基于 ARM 的系统映像,虚拟设备将无法加速并且运行缓慢。

安装后,使用以下命令确认驱动程序正常运行:

sc query aehd

安装并运行 AEHD 后,将能够运行加速的 Android 模拟器。

疑难解答

有关解决硬件加速问题的帮助,请参阅 Android Emulator 疑难解答指南。