从今天开始,当我尝试在2.3.3 Android平台上运行NetBeans应用程序时,它显示我:
分配内存失败:8
这个应用程序请求运行时以一种不寻常的方式终止它。请与应用程序支持团队联系以获取更多信息。
和模拟器不想启动。
这是我第一次看到它,谷歌没有答案,我甚至尝试了两个版本的NetBeans 6.9.1和7.0.1,仍然是相同的错误。
我明白了。问题是我为虚拟机指定的内存数量,它是1024MB,现在我有512MB,这是可以的,现在我需要找到如何提高这个ram数量,512不是很多,机器有点滞后。
关于Android:分配内存失败,在accept answer下的第一条注释,将"1024"改为"1024MB"对我有帮助。可怜,但有效。
在我的例子中:
- 使用内置的WXGA720模拟720p设备,总是得到这个错误
- 手动设置AVD分辨率为720 x 1280,适用于我
希望能有所帮助~
你在这里和其他地方读到的一切都是纯粹的猜测。唯一确定的解决这个问题的方法是投票给这个错误报告。
这个问题与模拟器分辨率或OpenGL无关,也与您的计算机有多少内存无关。我的电脑有24GB的内存,大多数时候我用hw.ramSize=1024
运行,我得到错误8。其他时候,它工作得很好,不需要任何配置更改。我希望你注意到:我根本没有改变模拟器的配置,但有时它运行,有时它失败。
很有可能与内存碎片有关。我建议将减少hw.ramSize
的值作为临时解决方案。
使用512mb代替。以上方法对我都不起作用。
看起来有一千种不同的修复方法…以上方法对我来说都不起作用,但有效的是从命令行emulator-arm.exe @AVD- name
启动AVD。如果只使用emulator.exe启动,我会得到与尝试通过Eclipse启动时相同的错误信息。
我意识到这个问题的解决方案源于在正常模式下运行应用程序时的Eclipse内存分配。我刚刚选中了Eclipse快捷属性下的"以管理员身份运行"框,现在它允许我为AVD分配更多内存。
希望有帮助。
我通过改变设备屏幕大小来克服这个问题。
我发现,如果你指定1024 mb ram,那么你必须在hdpi中指定设备屏幕大小,如果它是512 mb ram,那么它应该是mdpi或其他。
所以,我们可以清楚地说,ram大小应该根据屏幕大小来指定。如果你指定1024 ram大小,同时保持设备屏幕大小在mdpi,那么它会导致上面提到的错误,即"分配内存失败:8这个应用程序已经要求运行时以一种不寻常的方式终止它。
请联系应用程序的支持团队获取更多信息。
或
在AVD管理器中设置如下选项:
[2013-01-11 14:44:01 - SDK Manager] h .sensors.orientation=yes
[2013-01-11 14:44:01 - SDK Manager] h .camera.front=none
[2013-01-11 14:44:01 - SDK Manager] h .gps=yes
[2013-01-11 14:44:01 - SDK Manager] skin.dynamic=no
[2013-01-11 14:44:01 - SDK Manager] h .keyboard=no
[2013-01-11 14:44:01 - SDK Manager] vm.heapSize=32
[2013-01-11 14:44:01 - SDK Manager]ramSize=343
我浏览了这篇文章中提到的所有其他解决方案,没有找到任何有效的方法,所以我在周围闲逛了一下。由于某些原因,谷歌版本的API在我身上失败了。我把它改回了香草味,再也不会崩溃了。
我一定是有其他问题,但也许这将帮助某人…
查看官方issue 33930。有人指出,这可能与在模拟器启动期间启动OpenGL有关。其他人写道,只有当他们使用WXGA800-skin时才会崩溃,并建议手动将分辨率设置为800x1280。
还有ZIP-files提供手动降级您的android SDK到版本19和平台工具到版本11。这可能也有助于暂时解决这个问题。
我的机器有16gb和3.4 Ghz的四核进程。虚拟机也不允许我以1024的速度运行它。我确实把它提高到878MB,因为它在880时出现了同样的消息。这似乎是我可以分配给模拟器的最大ram。它仍然很慢,但我假设它比512MB更好。
我从AVD的启动选项更改了监视器DPI设置,并将其与监视器的原始和当前设置同步,并且它工作了。
我通过put作为存储大小的2倍RAM大小来解决,并且通过将SD存储大小与RAM大小相同来解决。
我有同样的问题,但在我得到这个问题之前,它要求我捕获视频源。
我禁用了相机支持,我可以使用1024MB of RAM
。
使用Windows 64bit, Xoom (Android 3.0)
.
在我的情况下,将屏幕分辨率从WVGA720更改为WSVGA适用于我。
问题是内存碎片。操作系统必须将您为vm指定的所有内存(例如1Gb)分配为一个连续的块。有时没有这样的障碍。要修复它,请关闭正在运行的程序,然后运行avd并启动虚拟机。
我在Windows上的成功之处是:
1)关闭Eclipse2)运行Avd UI3)关闭所有正在运行的进程,特别是那些占用大量内存的进程,如Chrome、explorer.exe等4)启动模拟器5) Win
确保IntelHAXM已正确安装。仅仅下载和"安装"是不够的。它通过SDK管理器。您需要从以下路径手动安装:
android-sdkextrasintelHardware_Accelerated_Execution_Manager
另外,请确保在BIOS中启用了英特尔虚拟技术。
按照developer.android.com上的指南或英特尔的安装说明。
您只需要编辑您的虚拟设备的ram,使其更低!尝试20mb,它将工作!
我注意到它只与一个有关,而所有其他的我都工作得很好。我删除了它并创建了一个新的,现在它可以工作了