HAXM 不支持嵌套虚拟机 GCP

HAXM does not support nested virtual machines GCP

我正在尝试在我的 android 开发环境中使用 Android 虚拟设备 (AVD),这是一个 GCP Compute Engine Windows 服务器虚拟机。

当我尝试创建虚拟 android 设备时,我收到一条建议:

HAXM does not support nested virtual machines

如何在我的 GCP Windows 服务器虚拟机中创建一个 Android 虚拟设备?

Google Tracker issue

这确实是一个很难解决的问题。 Preet Parekh 我终于想出了一个解决方案。结果非常好。借助 Cloud 的强大功能,我们可以在 1 秒内完成第一个 Gradle 构建!

解法

因此,GCP 或任何其他云支持者不会为您提供创建嵌套虚拟机的能力。它在默认情况下被阻止,因此 Android 工作室可以工作,但您将无法 运行 AVD,这没什么用。

因此,我们使用不同的 VM 架构来支持嵌套虚拟化。

在 GCP 中,只能为在 Haswell 处理器或更高版本上的 L1 VM 运行ning 启用嵌套虚拟化。如果区域的默认处理器是 Sandy Bridge 或 Ivy Bridge,您可以使用最小 CPU 选择来为特定实例选择 Haswell 或更高版本。

这意味着您只能在以下操作系统上允许嵌套虚拟化

要允许这样做,您将在创建 VM 时添加以下许可证-

https://compute.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx

这只是您将要执行的操作和涉及的主要步骤的一小部分,但是,我强烈建议您阅读 this blog by Preet 和我,其中提供了逐步指南这样做。准备好在 1 秒内完成 Gradle 构建!!