相关文章推荐
安静的香烟  ·  python - Failed to ...·  3 年前    · 
捣蛋的针织衫  ·  Compiler Error C2666 ...·  3 年前    · 

使用 Visual Studio,在 Android 设备不可用的情况下,可以在模拟器中轻松测试和调试适用于 Android 的 .NET MAUI 应用。 但是,如果硬件加速不可用或未启用,模拟器的运行速度将非常慢。 通过启用硬件加速并使用 x86-64 或 x86 虚拟设备映像,可以显著提高仿真器的性能。

在 Windows 上加速 Android 模拟器

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

  • Windows 虚拟机监控程序平台 (WHPX) 。 Hyper-V 是 Windows 的虚拟化功能,使虚拟的计算机系统可以在物理主计算机上运行。
  • Android Emulator 虚拟机监控程序驱动程序 (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-64 或 x86 的虚拟设备创建的系统映像。
  • 不可在另一 VM(例如由 VirtualBox、VMware 或 Docker 托管的 VM)内运行经过 VM 加速的模拟器(除非使用 WSL2)。 必须 直接在系统硬件上 运行 Android Emulator 。

    有关使用 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。 例如:

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

    在 Windows 中启用 Hyper-V 加速

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

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

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

    在 Windows 10 2018 年 10 月更新(RS5) 及更高版本中,你只需启用 Hyper-V 即可,因为它将自动使用 Windows 虚拟机监控程序平台 (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、Windows 8或 Windows 7。
  • 必须关闭 Hyper-V。
  • Windows 中的多个功能以隐式方式启用 Hyper-V。 有关详细信息,请参阅在 developer.android.com 上禁用 Hyper-V 时进行双检查。

    在 Windows 中启用 AEHD 加速

    如果计算机满足上述条件,请使用以下步骤通过 AEHD 加速 Android 模拟器:

  • 在 Visual Studio 中,选择 “Android >> Android SDK 管理器...” 菜单项。

  • 在 “Android SDK 和工具” 窗口中,选择“ 工具 ”选项卡。

  • 在 “工具”选项卡中,展开“ 附加项”,勾选 Android Emulator 虚拟机监控程序驱动程序 (安装程序) 项的复选框,然后选择“ 应用更改” 按钮:

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

  • 请确保在 Android 设备管理器 中创建的虚拟设备是基于 x86-64 或 x86 的系统映像。 如果使用基于 Arm 的系统映像,虚拟设备不会加速,并且运行速度缓慢。

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

    sc query aehd
    

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

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

  • 在 developer.android.com 上为 Android 模拟器配置硬件加速
  •