从今天开始,当我尝试在2.3.3 Android平台的NetBeans中运行一个应用程序时,它向我显示:

Failed to allocate memory: 8 此应用程序请求运行时以一种不寻常的方式终止它。 请联系应用程序的支持团队以获得更多信息。

模拟器不想启动。

这是我第一次看到它,谷歌没有这个asnwers,我尝试了2个版本的NetBeans 6.9.1和7.0.1,仍然是相同的错误。


当前回答

我遍历了这篇文章中提到的所有其他解决方案,但没有发现任何有效的解决方案,所以我稍微研究了一下。由于某种原因,API的谷歌版本在我身上失败了。我把它改回香草味,而且不再崩溃了。

我肯定有其他问题,但也许这将帮助某人…

其他回答

我想明白了。问题是在我为虚拟机指定的ram数量上,它是1024MB,现在我有512MB,这是可以的,现在我需要找到如何提高这个ram数量,512不是很多,而且机器有点滞后。

我的机器有16gb和3.4 Ghz的四核处理器。虚拟机也不允许我在1024上运行它。我确实把它提升到878MB,因为它在880的时候失败了,发出了相同的消息。这似乎是我可以分配给模拟器的最大内存。它仍然很慢,但我假设它比512MB要好。

问题在于内存碎片。操作系统必须将你为vm指定的所有ram(比如1Gb)分配为一个连续的块。有时没有这样的障碍。若要修复该问题,请关闭正在运行的程序,然后运行avd并启动虚拟机。

我意识到这个问题的解决方案源于在正常模式下运行应用程序时的Eclipse内存分配。我刚刚检查了Eclipse快捷属性下的“以管理员身份运行”框,现在它允许我为AVD分配更多内存。

希望这能有所帮助。

查看正式版本33930。有人指出,这可能与在模拟器启动期间启动OpenGL有关。其他人则写它只在使用WXGA800-skin时崩溃,并建议手动设置分辨率为800x1280。

此外,还提供了zip文件来手动将android SDK降级到版本19和平台工具降级到版本11。这可能有助于暂时解决问题。