Android 模拟器未能分配内存8

当我尝试从 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 的堆大小和扩展大小,但仍然面临同样的错误。

114328 次浏览

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

hw.ramSize=1024

hw.ramSize=1024MB

Android 4.2 API 17

模拟器真的很慢,如果你想改变它,希望他们能尽快公布情报图像使用新的 API17英特尔 x86图像。.(HAXM配置)


Android SDK Manager 早期版本:

内置的 WXGA800皮肤也有同样的问题。我通过编辑虚拟设备设置来让它工作:

  • 目标4.0.3 API 15/4.1.0 API 16
  • SD 卡300MiB
  • 分辨率1280x800(手动设置,而非内置设置)
  • 设备内存大小为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\

这个配置也显示了软件密钥 Screenshot Android 4.1 emulator 1280x800@160

下面的解决方案适用于我:

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

替换

hw.ramSize=1024

作者

hw.ramSize=1024MB

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

如果您将 AVD RAM 设置为任何比模拟器能够分配的最大连续内存块更大的内容,则会触发此错误。关闭任何内存重,启动您的模拟器,启动所有其他您需要的。在前一个答案中,我使用 IntelHAXM 将其限制为 x86映像,但是对于所有类型的模拟器实例都是如此。

在 AVD 设置中: 将 CPU/ABI 选项更改为 MIPS。 这招对我很管用

在我的情况下,解决方案是改变不仅 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=1024改为 hw.ramSize=1024MB

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

我在“编辑 Android 虚拟设备”窗口中将 SD 卡大小更改为1000MiB..

编辑 Android 虚拟设备并将“1024下内存选项”更改为“768”。如果还是不起作用,那就继续下降。

减少内存大小在 AVD 设置为我工作。AVD 速度慢会消耗大量内存,因此将其保持在最低限度是可行的。

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

RamSize = 1024 到

RamSize = 1024MB

或者

RamSize = 512MB

为皮肤删除无皮肤,并添加一些皮肤到它

enter image description here

如果其他答案对你不起作用,试试这个。

对我来说,这发生在 API 27仿真器上。

API 26仿真器工作得很好。所以我首先启动了 API 26仿真器,然后关闭了它。

然后我启动了 API 27仿真器,它工作在没有任何错误。