如何解决:“HAX无法运行,仿真器在仿真模式下运行”

时间:2014-01-09 21:48:30

标签: android macos android-emulator

问题

我得到“HAX无法运行且模拟器在仿真模式下运行”,这是否与Intel x86仿真器加速器(HAXM)安装相关并运行avd并将cpu设置为CPU Intel Atom(x86)?即使我在安装HAXM后感觉AVD运行速度更快,但是此消息表明AVD性能受到阻碍。应该修复,如果是,如何修复?

我在mac os x 10.9.1上运行。

通过android sdk manager列出我系统上安装的内容:

  • 工具
    • Android SDK工具Rev 22.3
    • Android SDK Platform-tools rev 19.0.1
    • Android SDK Build-tools Rev 19.0.1
    • Android SDK Build-tools Rev 19

==

  • Android 4.4.2(API 19)
    • SDK平台
    • ARM EABI v7a系统映像
    • Intel x86 Ato System Image
    • Google API
    • Android SDK的来源

==

  • 附加功能
    • 英特尔x86仿真器加速器(HAXM)和我也运行dmg安装程序,并在我发现它之后安装了热修复程序。

AVD设置

  • Platform 4.4.2
  • API等级19
  • CPU Intel Atom(x86)

一旦我运行avd:

(ruby-2.0.0-p353) .android   $ tools/emulator -avd 1AVD -wipe-data -no-boot-anim -cpu-delay 0

我得到关注并且模拟器最终加载

emulator: The memory needed by this VM exceeds the driver limit.

HAX is not working and emulator runs in emulation mode

17 个答案:

答案 0 :(得分:198)

是的,应该修复,HAXM不起作用。 在AVD配置中设置了多少RAM?

768M是一个很好的数字,但最重要的是这个数字必须低于或等于你在安装HAXM期间设置的内存使用量。您可以再次启动其安装以进行修改。

答案 1 :(得分:65)

如果您使用的是Mac,则可以使用homebrew cask通过{{3}}安装haxm,这是一个内置扩展程序(截至2015年),允许安装非开源和桌面应用程序(即chrome,firefox,eclipse等):

brew cask install intel-haxm 

Android Studio

如果您使用的是Android Studio,则可以从菜单工具 SDK Manager 获得相同的结果,然后在 SDK工具选项卡,选中 Intel x86仿真器加速器(HAXM安装程序) 的复选框,然后单击确定

答案 2 :(得分:48)

我解决它的方法是将AVD内存限制和HAXM内存设置为大小相等,即1 GB = 1024 MB。 AVD不能具有比HAXM更高的内存限制。

<强> 1。将HAXM内存设置为1024 M

更改HAXM内存的唯一方法是再次安装。我是用终端做的。在您的计算机中找到 Hardware_Accelerated_Execution_Manager 。然后更改该文件夹的目录以运行安装脚本。

cd ~/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager

-OR-

cd ~/Library/Developer/Xamarin/android-sdk-macosx/extras/intel/Hardware_Accelerated_Execution_Manager

可能需要更改权限:

sudo chmod 755 "HAXM installation"

然后:

./HAXM\ installation -m 1024

-OR-

sudo ./"HAXM installation" -m 1024

<强> 2。使用HAXM内存限制将虚拟设备设置为相同大小

enter image description here

这对我有用。祝你好运!

答案 3 :(得分:24)

答案 4 :(得分:20)

适用于Windows。

Android Studio

工具&gt; Android &gt; AVD Manager &gt; 您的设备 &gt; 铅笔图标 &gt; 显示高级设置&gt; 内存和存储&gt; RAM &gt;将RAM设置为您的首选大小。

Control Panel

计划和功能&gt; 英特尔硬件加速执行管理器&gt; 更改&gt; 手动设置&gt;将RAM设置为您的首选大小。

两个地方设置的RAM大小最好相同。

答案 5 :(得分:4)

在英特尔网站上查看最新版本的Has并进行安装。让ram处于建议大小&#34;预设2048&#34;,然后尝试运行该应用程序。事情应该很好。

答案 6 :(得分:2)

是的,应该修复,HAXM无效。

HAXM有时会起作用; HAXM的经验目前在各个平台上都是零星的。

例如,我已经到了2009年末iMac运行10.8.5和i7处理器@ 2.8Ghz,Android SDK 22.6,所有的好东西今天早上更新(2014年5月3日)。 API17将在这台iMac机器上构建具有HAXM加速功能的仿真器,API19会消失。

我还有早期的2013 MBP 15“Retina运行10.8.5和i7处理器@ 2.7Ghz,Android SDK 22.6今天早上更新了所有的好东西(2014年5月3日).API17将使用HAXM加速,API19构建模拟器也很棒。

与我的(个人)2013年末MBP Retina 13“相同,双核i5和小牛队。

旧的CPU(甚至i7)缺少芯片级虚拟化,新的API19 x86映像需要HAXM才能工作。如果API19无效,请尝试API17甚至16。

答案 7 :(得分:2)

如果您运行的是英特尔处理器,请确保通过SDK Manager中的此选项通过SDK Manager安装HAXM(英特尔®硬件加速执行管理器)安装程序。然后通过以下路径运行HAXM安装程序ext

your_sdk_folder\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm.exe

还检查在进行HAX安装时分配的ram大小,使其符合模拟器的ram大小。

video显示可帮助您解决问题的所有必需步骤。

如果您在安装HAXM后遇到问​​题,此video也会对您有所帮助。

答案 8 :(得分:2)

在Mac上打开取景器然后Ctr + Alt + G 输入此/Users/${yourMacNameHere}/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager

你要找到模拟器加速器的安装程序,然后运行它并设置你需要修改它的内存并重试运行你的android应用程序

答案 9 :(得分:1)

您必须验证在执行HAX安装时分配的大小是否与AVD仿真器配置中的大小相同。

你可以在这里看到法语:http://blerow.blogspot.fr/2015/01/android-studio.html

答案 10 :(得分:1)

geckob的解决方案非常有效。 警告:您提供的HAXM用于所有正在运行的设备。因此,如果您同时在手机和平​​板电脑上进行测试,并且每个都需要1G。然后确保您的HAXM分配至少为2G。

答案 11 :(得分:1)

在进行HAX安装时增加分配的ram大小,以便与要在&#34; Intel x86仿真器加速器(HAXM)中启动的仿真器的ram大小完全匹配或更高一些空间#34;模式,

成功完成后,您现在可以在控制台/日志中查看此内容

enter image description here

答案 12 :(得分:1)

在我的情况下,当我将HAXM内存设置为等于AVD内存时,此错误已得到修复。 HAXM内存1024 MB = AVD内存1024 MB

Hax is enabled
Hax ram_size 0x40000000
HAX is working and emulator runs in fast virt mode.

到目前为止,错误应该是固定的。

现在我列出了我的特定环境,以防它对使用OS X的人有所帮助。

OS X El Capitan 10.11.4

MacBook(13英寸),2 GHz Intel Core 2 Duo,4 GB Ram。

Android Studio 2.1

Marshmallow(23)x86 没有通过闪烁的Android图标屏幕连续几个小时。

Lollipop(22)x86通过闪烁的android图标屏幕然后显示

  • 启动Android(优化x应用程序中的x)
  • 启动Android(启动应用)
  • 启动Android(更新联系人数据库)
  • 启动Android(完成启动)和在这里停留数小时

KitKat(19)x86成功运作,我可以在那里安装hello world。

答案 13 :(得分:1)

从SDK Manager下载HAXM

从Android Studio打开SDK Manager,单击屏幕截图中显示的图标。

enter image description here

单击“默认设置”对话框中的“启动独立SDK管理器”。

enter image description here

检查节点“其他&gt; Intel x86仿真器加速器(HAXM安装程序)”并继续进行HAXM下载。

enter image description here

安装或修改HAXM

您现在可以通过访问下载位置来访问HAXM的安装(或修改现有的installtino)。在“运行”中输入此路径

  

%LOCALAPPDATA%\的Android \ SDK \额外\英特尔\ Hardware_Accelerated_Execution_Manager

并双击文件“intelhaxm-android.exe”

您可以在修改现有HAXM安装时增加分配给HAXM的内存大小。我有一台32 GB RAM的机器,并希望同时启动多个AVD(用于自动测试等),所以我已经为HAXM分配了8 GB。

<强>买者

如果您运行一个1 GB的AVD并为HAXM分配2 GB,则无法运行RAM超过1 GB的另一个AVD。在修改或安装HAXM时,请确保Android设备监视器未运行(只是为了避免任何意外)。

enter image description here

这些步骤在Windows平台上进行了测试,但通常也可以稍加修改地应用于其他平台。

答案 14 :(得分:1)

我的问题是我无法再运行一个有效的模拟器,因为我已经退出模拟器应用程序,但该过程还没有完全结束,所以我试图启动另一个模拟器而前一个模拟器仍在运行。在Mac上,我不得不使用活动监视器来查看其他进程并将其终止。步骤进行:

  1. 打开活动监视器(在实用程序中或使用Command + Space)
  2. 找到进程名称,在我的例子中,qemu-system ...
  3. 选择流程。
  4. 使用&#39; x&#39;强制退出流程。左上角的按钮。
  5. 我没有必要使用强制退出&#39;只是简单的退出&#39;但你也可以使用。

答案 15 :(得分:0)

重新打开您的AVD设备配置。通过在AVD管理器中编辑设备。继续选择AVD Android版本。在右侧窗格中,按照该建议显示推荐,所有内容都将被修复。

答案 16 :(得分:0)

分配给HAX的默认内存为1024MB。 而模拟器显然为Nexus 5x api 25提供了1536MB。

如果您正在使用Android Studio,

  • 只是去工具 - &gt; AVD经理。
  • 然后选择模拟器并单击 在右边的铅笔按钮上进行编辑。
  • 转到高级设置 新窗口并将RAM值更改为1024

像魅力一样工作。 :)

screenshot of android studio

相关问题