从今天开始,当我尝试在2.3.3 Android平台上的NetBeans中运行应用程序时,它向我显示:
分配内存失败:8
该应用程序已请求运行时以一种异常方式终止它。请与应用程序的支持团队联系以获取更多信息。
并且模拟器不想启动。
这是我第一次看到它,而google对此没有任何回答,我什至尝试使用2个版本的NetBeans 6.9.1和7.0.1,仍然存在相同的错误。
从今天开始,当我尝试在2.3.3 Android平台上的NetBeans中运行应用程序时,它向我显示:
分配内存失败:8
该应用程序已请求运行时以一种异常方式终止它。请与应用程序的支持团队联系以获取更多信息。
并且模拟器不想启动。
这是我第一次看到它,而google对此没有任何回答,我什至尝试使用2个版本的NetBeans 6.9.1和7.0.1,仍然存在相同的错误。
Answers:
我想到了。问题出在我为虚拟机指定的ram数量上,它是1024MB,现在我有512MB,还可以,现在我需要找到如何提高此ram数量的方法,512不是那么多,并且机器有点落后。
emulator-x86 -avd <your_avd_name>
hw.ramSize
在config.ini中(Device Ram Size
GUI的硬件列表中)将值添加为1024的显示皮肤。确保选择一个值较小的“皮肤”,或者使用手动分辨率并从“硬件”列表中删除此行-选择皮肤后就不能删除它。
指的是Android:无法分配内存,并且无法在接受的答案下给出第一条评论,将“ 1024”更改为“ 1024MB”对我有帮助。可悲,但有效。
就我而言:
希望对你有帮助〜
您在此处和其他地方阅读的所有其他文章都是纯推测。解决此问题的唯一方法是对该错误报告进行投票。
问题与模拟器分辨率或OpenGL没有关系,也与计算机有多少内存无关。我的计算机上有24GB的内存,大多数情况下我运行时都hw.ramSize=1024
遇到错误8。其他时候,它在没有任何配置更改的情况下也可以正常工作。我希望您能明白这一点:我根本没有更改模拟器的配置,但是有时它会运行,有时会失败。
它很有可能与内存碎片有关。我建议减少hw.ramSize
作为临时解决方法的价值。
似乎有1000种不同的修复程序...以上对我来说都没有用,但是有效的方法是从命令行emulator-arm.exe @ AVD-NAME启动AVD
以某种方式,如果仅使用emulator.exe启动,与尝试通过Eclipse启动时,我将得到相同的错误消息。
我已经通过更改设备屏幕尺寸解决了这个问题。
我发现,如果您指定1024 mb ram,则必须仅以hdpi指定设备屏幕大小,如果为512 mb ram,则应为mdpi或其他。
因此,我们可以清楚地说,应根据屏幕尺寸指定压头尺寸。如果在将设备屏幕大小保持为mdpi的同时指定1024 ram大小,则会导致上述错误,即“分配内存失败:8该应用程序已请求运行时以一种不寻常的方式终止它。
请与应用程序的支持团队联系以获取更多信息。”
要么
在AVD管理器中进行如下选择:
[2013-01-11 14:44:01-SDK Manager] hw.sensors.orientation = yes
[2013-01-11 14:44:01-SDK Manager] hw.camera.front = none
[2013-01-11 14:44:01-SDK Manager] hw.gps = yes
[2013-01-11 14:44:01-SDK Manager] skin.dynamic = no
[2013-01-11 14:44:01-SDK Manager] hw.keyboard = no
[2013-01-11 14:44:01-SDK Manager] vm.heapSize = 32
[2013-01-11 14:44:01-SDK Manager] hw.ramSize = 343
看看官方发行号33930。需要指出的是,它可能与模拟器启动期间OpenGL的启动有关。其他人则只在使用WXGA800皮肤时崩溃,并建议手动将分辨率设置为800x1280。
此外,还提供了ZIP文件,可将您的android SDK手动降级至版本19,将plattform-tools降级至版本11。这也可能有助于暂时解决此问题。
hw.ramSize=1024
解决问题(如果选择WXGA,则不能这样做,您需要使用手动分辨率设置)。
我从AVD的启动选项更改了显示器的DPI设置,并将其与显示器的原始设置和当前设置同步,并且可以正常工作。
我将存储大小设置为RAM大小的2倍,并将SD存储大小设置为与RAM大小相同,从而解决了问题。
在Windows上对我有用的是:
1)关闭Eclipse 2)运行Avd UI 3)关闭所有正在运行的进程,尤其是那些内存很大的进程,例如Chrome,explorer.exe等4)启动模拟器5)Win
确保正确安装了IntelHAXM。仅通过SDK Manager下载并“安装”它是不够的。您需要从以下位置手动安装它:
android-sdk\extras\intel\Hardware_Accelerated_Execution_Manager
另外,请确保在您的BIOS中启用了英特尔虚拟技术。
请遵循developer.android.com上的指南或英特尔的安装说明。
我注意到,这与我工作正常的所有其他功能只有一个相关。我删除了它并创建了一个新的,现在它可以工作了。