157

当我尝试从 Eclipse 运行我的 WXGA800 仿真器时,它会出现这样的错误

Failed to allocate memory: 8
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

我还检查了以下链接

分配内存失败:8

Android:分配内存失败

我尝试减少模拟器中的 RAM 大小并增加 Java heapsize 和 ramsize 但我仍然面临同样的错误。

4

12 回答 12

410

更新:从 Android SDK Manager 版本 21 开始,解决方案是编辑C:\Users\<user>\.android\avd\<avd-profile-name>.avd\config.ini和更改值

hw.ramSize=1024 

hw.ramSize=1024MB

安卓 4.2 API 17

模拟器真的很慢希望他们能尽快发布英特尔图像如果您想更改它,请使用新的 API17 Intel x86 映像..(HAXM配置


较早的 Android SDK Manager 版本:

内置的 WXGA800 皮肤也有同样的问题。我通过将虚拟设备设置编辑为:

  • 目标 4.0.3 API 15 / 4.1.0 API 16
  • SD 卡 300MiB
  • 分辨率 1280 x 800(手动设置 - 不是内置的)
  • 设备内存大小 1024MB(数字加上 MB)
  • 抽象LCD 160

这是我的平板电脑配置 4.1.0 API 16 C:\Users\<user>\.android\avd\<avd-profile-name>.avd\config.ini

hw.lcd.density=160
sdcard.size=300M
skin.path=1280x800
skin.name=1280x800
hw.cpu.arch=arm
abi.type=armeabi-v7a
hw.cpu.model=cortex-a8
vm.heapSize=48
hw.ramSize=1024MB
image.sysdir.1=system-images\android-16\armeabi-v7a\

此配置也显示软件密钥 截图 Android 4.1 模拟器 1280x800@160

于 2012-08-08T15:46:17.937 回答
67

以下解决方案对我有用。在以下配置文件中:

C:\Users\<user>\.android\avd\<avd-profile-name>.avd\config.ini

代替

hw.ramSize=1024

经过

hw.ramSize=1024MB
于 2012-12-05T19:29:44.953 回答
9

就我而言,解决方案不仅是更改特定皮肤,config.ini还要更改hardware.ini特定皮肤从hw.ramSize=1024hw.ramSize=1024MB

要查找hardware.ini文件:

  1. 打开config.ini并找到skin.path
  2. 然后导航到android sdk所在的文件夹。
  3. 打开路径,如下所示:android-sdk\platforms\android-15\skins\WXGA720.
  4. 在此文件夹中,您将找到hardware.ini.
  5. 更改hw.ramSize=1024hw.ramSize=1024MB
于 2013-01-11T12:18:19.243 回答
5

更新:从 Android SDK Manager 版本 21 开始,解决方案是编辑 C:\Users\.android\avd\.avd\config.ini 并更改值

hw.ramSize=1024 到

hw.ramSize=1024MB

或者

hw.ramSize=512MB

于 2014-02-17T05:09:54.087 回答
3

如果您将 AVD RAM 设置为大于模拟器能够分配的单个最大连续内存块的任何值,则会触发此错误。关闭任何 RAM 重的东西,启动你的模拟器,启动你需要的一切。在之前的回答中,我已将其限制为使用 IntelHAXM 的 x86 图像,但实际上所有类型的仿真器实例都是这种情况。

于 2013-01-06T00:30:03.810 回答
3

在 AVD 设置中:将 CPU/ABI 选项更改为 MIPS。它对我有用

于 2013-01-09T09:43:22.697 回答
1

我遇到了同样的问题,最终的问题是 RAM 大小:显然 1024(或任何大小)与 1024MB 不同。确保您指定了单位,它应该适合您。

于 2012-12-21T17:35:21.883 回答
1

更改 config.ini 文件中的 ramSize 对我不起作用。

我在“编辑 Android 虚拟设备”窗口中将 SD 卡大小更改为 1000 MiB ...它成功了!:)

于 2013-03-13T10:30:40.740 回答
0

去编辑Android Virtual Devices,把1024 Under Memory Options改成768。如果还是不行,继续往下走。

于 2013-05-26T17:36:21.907 回答
0

减少 AVD 设置中的 RAM 大小对我有用。缓慢的 AVD 会占用大量 RAM,因此将其保持在最低限度是可行的。

于 2013-06-04T02:22:43.093 回答
0

对于皮肤,去掉 No Skin 并在其中添加一些皮肤

在此处输入图像描述

于 2014-08-28T05:23:17.767 回答
0

如果其他答案对您不起作用,请尝试此操作。

对我来说这发生在 API 27 模拟器上。

API 26 模拟器工作得很好。所以我先启动了 API 26 Emulator,然后关闭了它。

然后我启动了 API 27 Emulator,它完全没有错误。

于 2018-06-03T08:10:22.217 回答