使Hyper-V和Intel HAXM共存

31

Windows手机模拟器需要Hyper-V才能运行,但是Android模拟器又需要Intel硬件加速管理器(HAXM),而它与Hyper-V不兼容。

有没有方法可以保持Hyper-V并暂时禁用它,以使Intel HAXM正常运行,而无需重新启动

  1. 我运行了Windows Hyper-V管理器并停止了服务器(这涉及到停止所有服务),但这并没有帮助:Android模拟器仍然拒绝启动。

  2. 我调用了services.msc,查看是否还有一些Hyper-V服务正在运行。确实,所有以Hyper-V开头的服务都未运行。我也停止了HV主机服务(Microsoft Hypervisor Host service),但仍然没有帮助!

有什么想法吗?


4
无法在同一台机器上同时使用Hyper-V和HAXM。但现在,Hyper-V可以替代HAXM作为Android模拟器的加速器。请参见此链接:https://blogs.msdn.microsoft.com/visualstudio/2018/05/08/hyper-v-android-emulator-support/ - Junle Li
3个回答

21

安卓模拟器在Hyper-V上能够良好运行吗?你有没有和HAXM比较过(HAXM对我无用)?我考虑安装VS 2017 15.8(已安装15.7),并切换到Hyper-V,想了解在此之前是否需要考虑Hyper-V是否存在问题。谢谢。 - FredyWenger
2
使用新的Windows更新和启用了Hyper-V和Windows HyperVisor平台功能后,它按预期工作。除了能够同时使用Android模拟器和Docker之外,我没有注意到与使用HAXM有任何区别;0) - TetraDev
感谢 @TetraDev。与此同时,我已经成功让HAXM工作了(我不得不更新Android APK中的Android模拟器到最新版本,并且在此之前必须取消"建议来自Microsoft"以查看更新)。现在它似乎基本上可以正常工作了... - FredyWenger
3
Android Studio怎么样?那只是针对Visual Studio的。 - kb1000

14

这可能是最好的解决方法:

http://blogs.msdn.com/b/virtual_pc_guy/archive/2008/04/14/creating-a-no-hypervisor-boot-entry.aspx

您需要保留两个BCD条目,都指向同一个Windows 10分区。一个启用了Hyper-V(hypervisorlaunchtype Auto),另一个禁用了Hyper-V(hypervisorlaunchtype Off)。仍需重新启动系统,但无需安装/卸载Hyper-V,这是一个显著的缓解。

顺便说一下,本文使用了标准的Windows命令行实用程序bcdedit。作为替代方案,您可以使用GUI应用程序Visual BCD编辑器


不好意思,这个问题有进展了吗?找到了一种在不重启计算机、不需要安装和重新安装的情况下,通过命令行启动和停止Hyper-V的方法了吗?抱歉耽误您的时间。非常感谢,祝一切顺利。 - statosdotcom
微软还提供了一个可以与Hyper-V共存的Android模拟器:https://www.visualstudio.com/en-us/features/msft-android-emulator-vs.aspx。有关安装和配置说明,请参见http://www.itwriting.com/blog/9371-how-to-run-android-studio-on-windows-without-disabling-hyper-v.html。但是,它似乎还不支持Nougat;它只能运行到Marshmallow。哦,好吧。 - YSK
1
我也使用Microsoft模拟器。你只需要从网络选项卡中获取IP地址,然后输入“adb connect ip-address”,就可以在任何地方使用它了。不幸的是,它不支持Android 7。 - cyanide

10

您无法在不启动计算机的情况下禁用Hyper-V。

  • Hyper-V是一种类型1虚拟化程序。它直接运行在裸机上。
  • 当您开启Windows 10的Hyper-V功能时,Windows根操作系统在Hyper-V上运行
  • 当您关闭Windows 10的Hyper-V功能时,Windows将直接在裸机上运行,没有中间的Hyper-V。

唯一的去除Hyper-V的方法是重启计算机。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接