求助:在GCP Compute Engine Windows虚拟机中创建AVD遇HAXM嵌套不支持问题
在GCP Windows Server虚拟机创建Android虚拟设备(AVD)的解决方案
我来帮你搞定这个问题——在GCP的Windows Server虚拟机上遇到HAXM不支持嵌套虚拟化是很常见的情况,毕竟GCP VM本身就是虚拟化实例,咱们可以从两个核心方向解决:开启GCP的嵌套虚拟化支持,然后用Windows原生的WHPX替代HAXM来加速模拟器。
第一步:开启GCP Compute Engine的嵌套虚拟化支持
这是解决问题的基础,因为你的Windows Server运行在GCP虚拟机上,默认没有开启嵌套虚拟化,这也是HAXM报错的核心原因:
- 首先停止你的GCP虚拟机:只有关机状态下才能修改嵌套虚拟化设置,在GCP控制台找到你的实例,点击“停止”按钮即可。
- 开启嵌套虚拟化:
- 方法一(GCP控制台):编辑虚拟机实例,找到“CPU平台和功能”部分,勾选“启用嵌套虚拟化”,保存后重启虚拟机。
- 方法二(gcloud命令行):打开Cloud Shell或者本地安装的gcloud工具,执行以下命令(替换成你的实例名和区域):
执行完成后重启虚拟机。gcloud compute instances set-nested-virtualization YOUR_INSTANCE_NAME --zone YOUR_ZONE_NAME
第二步:切换到Windows Hypervisor Platform(WHPX)替代HAXM
HAXM对嵌套虚拟化的支持很差,而Windows Server自带的WHPX(依赖Hyper-V)完美适配嵌套场景,是更合适的选择:
- 安装Hyper-V角色:
- 打开Windows Server的“服务器管理器”,点击“添加角色和功能”,按照向导步骤勾选“Hyper-V”角色,完成安装后重启服务器。
- 配置Android Studio使用WHPX:
- 打开Android Studio,进入
File > Settings > Appearance & Behavior > System Settings > Android SDK(或者在欢迎页直接点击“SDK Manager”)。 - 切换到“SDK Tools”标签,先取消勾选Intel x86 Emulator Accelerator (HAXM installer),然后勾选Android Emulator Hypervisor Driver for AMD Processors(别被名字误导,Intel CPU也能用这个驱动启用WHPX),点击“Apply”完成安装。
- 打开Android Studio,进入
- 创建AVD时启用WHPX加速:
- 打开AVD Manager,创建新虚拟设备,选择你需要的设备模板和x86/x86_64系统镜像(推荐选带Google Play的镜像,方便测试)。
- 在“Emulated Performance”步骤,选择“Hardware - GLES 2.0”,新版本Android Studio会自动检测并启用WHPX加速,直接完成创建即可。
额外注意事项
- 你的GCP虚拟机至少需要2vCPU和4GB内存(推荐8GB以上,否则AVD运行会卡顿),且CPU平台要支持嵌套虚拟化(比如Intel Haswell及以上、AMD Rome及以上)。
- 如果之前安装过HAXM,建议在Windows“控制面板 > 程序和功能”里彻底卸载,避免和WHPX产生冲突。
内容的提问来源于stack exchange,提问作者Rishit Dagli
相关产品推荐
相关产品推荐

