Android ADT中增大AVD内存后无法启动:emulator failed to allocate memory 8

过程中,增大对应AVD的内存为2G后,结果无法启动AVD了:


[2012-12-18 18:01:38 – Emulator] Failed to allocate memory: 8 
[2012-12-18 18:01:38 – Emulator] 
[2012-12-18 18:01:38 – Emulator] This application has requested the Runtime to terminate it in an unusual way. 
[2012-12-18 18:01:38 – Emulator] Please contact the application’s support team for more information.

【解决过程】

1.所以,重新改小为1G试试:

结果问题依旧。

2.参考:

Android Emulator: Failed to allocate memory: 8 even with 8MB RAM

说是,只能是256/512/1024

但是很明显,我上面改成1024也是不行的。

参考最后一个人的解释,去改为900MB,看到log为:


[2012-12-18 18:16:04 – SDK Manager] Snapshot image already present, was not changed. 
[2012-12-18 18:16:04 – SDK Manager] SD Card already present with same size, was not changed. 
[2012-12-18 18:16:04 – SDK Manager] Updated AVD ‘SamsungGalaxySII’ based on Android 4.2, ARM (armeabi-v7a) processor, 
[2012-12-18 18:16:04 – SDK Manager] with the following hardware config: 
[2012-12-18 18:16:04 – SDK Manager] hw.sdCard=yes 
[2012-12-18 18:16:04 – SDK Manager] hw.device.manufacturer=Google 
[2012-12-18 18:16:04 – SDK Manager] hw.mainKeys=yes 
[2012-12-18 18:16:04 – SDK Manager] hw.lcd.density=240 
[2012-12-18 18:16:04 – SDK Manager] hw.accelerometer=yes 
[2012-12-18 18:16:04 – SDK Manager] hw.dPad=no 
[2012-12-18 18:16:04 – SDK Manager] hw.device.hash=499058361 
[2012-12-18 18:16:04 – SDK Manager] hw.trackBall=no 
[2012-12-18 18:16:04 – SDK Manager] hw.device.name=Nexus S 
[2012-12-18 18:16:04 – SDK Manager] hw.camera.back=none 
[2012-12-18 18:16:04 – SDK Manager] hw.sensors.proximity=yes 
[2012-12-18 18:16:04 – SDK Manager] hw.battery=no 
[2012-12-18 18:16:04 – SDK Manager] disk.dataPartition.size=200M 
[2012-12-18 18:16:04 – SDK Manager] hw.audioInput=yes 
[2012-12-18 18:16:04 – SDK Manager] hw.sensors.orientation=yes 
[2012-12-18 18:16:04 – SDK Manager] hw.camera.front=none 
[2012-12-18 18:16:04 – SDK Manager] hw.gps=yes 
[2012-12-18 18:16:04 – SDK Manager] skin.dynamic=no 
[2012-12-18 18:16:04 – SDK Manager] hw.keyboard=no 
[2012-12-18 18:16:04 – SDK Manager] vm.heapSize=32 
[2012-12-18 18:16:04 – SDK Manager] hw.ramSize=900

然后再去试试,结果错误依旧。

3.改回之前配置的512MB,是可以的。

但是不是我想要的,想要的就是,尽量让内存大点,以此希望能让AVD模拟器跑的快点,不要这么慢。

4.再去改为768MB,结果又显示和之前的snapshot不一致,所以还不给启动:


[2012-12-18 18:19:00 – DownloadSongtasteMusic] —————————— 
[2012-12-18 18:19:00 – DownloadSongtasteMusic] Android Launch! 
[2012-12-18 18:19:00 – DownloadSongtasteMusic] adb is running normally. 
[2012-12-18 18:19:00 – DownloadSongtasteMusic] Performing crifan.com.downloadsongtastemusic.MainActivity activity launch 
[2012-12-18 18:19:00 – DownloadSongtasteMusic] Automatic Target Mode: launching new emulator with compatible AVD ‘SamsungGalaxySII’ 
[2012-12-18 18:19:00 – DownloadSongtasteMusic] Launching a new emulator with Virtual Device ‘SamsungGalaxySII’ 
[2012-12-18 18:19:00 – Emulator] emulator: ERROR: Unable to load VM from snapshot. The snapshot has been saved for a different hardware configuration.

5.所以,先去把snapshot去掉,然后再启动,启动后,关闭掉,再次勾选上snapshot。

结果还是同样提示:

ERROR: Unable to load VM from snapshot. The snapshot has been saved for a different hardware configuration

所以,估计只能是删除掉,重新建一个,也许才可以的。

6.重新新建一个AVD:

然后用这个AVD试试效果。

然后是可以启动的。

不过速度也还是很慢。

6.继续参考该贴,先去设置为1024MB,

然后再去把:

C:\Users\CLi\.android\avd\SamsungGalaxySII.avd\config.ini

中的:

hw.ramSize=1024

改为

hw.ramSize=1024MB

然后去运行试试,结果出现:

Emulator] emulator: ERROR: Unable to load VM from snapshot. The snapshot has been saved for a different hardware configuration.

再去取消掉snapshot,再运行,的确是可以运行的。

【总结】

结论是:

当前有个bug:

默认是通过

hw.ramSize=1024

来判断内存大小的,但是当是>=1024时,就无法正确识别了。

必须手动把对应的

C:\Users\CLi\.android\avd\SamsungGalaxySII.avd\config.ini

中的

hw.ramSize=1024

改为

hw.ramSize=1024MB

就可以了。

提示:

1. 手动改了后,结果会导致界面中无法正确显示:

总之,还是很悲催,bug还是很大的说。

2.虽然改为1024MB,甚至2048MB,但是实际上运行AVD的时候,貌似还是原始的(我所选的那个设备Nexus的)343MB:

总之,更加坑爹。。。

时间: 2024-08-10 23:18:20

Android ADT中增大AVD内存后无法启动:emulator failed to allocate memory 8的相关文章

MySQL在windows系统中修改datadir路径后无法启动问题,报错1067

windows server2008下如何更改MySQL数据库的目录的帖子已经很多了,这里简单介绍一个步骤,如果不成功请先查看其它帖子. 更改默认的mysql数据库目录 将 C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.1\data 改到 D:\MysqlData 1. 建立文件夹 D:\MysqlData 2. 停止 mysql 服务,将 "C:\Documents and Settings\

关于Android应用中图片占用内存浅谈

从事过移动端应用开发的童鞋应该都清楚,内存是非常宝贵的资源.如果能很好的利用有限的内存,对应用性能的提升会有很大的帮助.在实际应用开发中图片内存占整个应用非常大的比重,我们只有了解图片是如何加载到内存中,才能更好的优化图片所占的内存. 那么对于图片在Android应用中的使用进行探讨一下. 图片所占内存大小=内存中图片高 * 内存中图片宽 * 每个像素所占字节数   1,那么图片的物理高宽和加载到内存中的高宽是否是一样的呢? 在应用中关于图片的加载一般分为两种情况,其加载到内存中的大小也是不一样

kafka 启动 报错cannot allocate memory,即内存不足

错误提示: Java Hotspot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c5330000, 986513408, 0) failed; error='Cannot allocate memory' (errno=12) # # There is insufficient memory for the Java Runtime Environment to continue. # Native memor

android adt升级到版本22后,就无法再向lib库里面添加jar了

目前有一个android app 大项目,引用了很多的类库,一直运行的好好的,今天我把Eclipse ADT插件升级到了最新版本(v22),同时把sdl也升级了.在整个 升级过程中很好,没有任何问题,当我达成apk在手机上运行时,报错了NoClassDefFoundError java.lang.NoClassDefFoundError:org.acra.ACRA .... 该ARCA库一斤包含到了lib库里面了,我能在Android Private Libraries 中看到,并且编译错误.在

关于Android开发中导出jar包后的资源使用问题解决

我们经常遇到一个需求,就是给别人使用我们工程的时候,为了能够屏蔽代码,把代码封装成jar包提供给第三方使用,但是这样我们的资源文件怎么给对方用呢? 其实并不用这么的复杂,下面就介绍一下具体的方法 一, 把你要封装jar包的工程先设置为库文件(Is Library) 右键项目名称——properties——勾选下图的checkbox即可. 二.最关键的一步,Clean一次项目!!! Eclipse点击上面工具栏的Project——Clean——选择项目,确定 三.使用Eclipse的Export功

idea中增大jdk内存

-Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxNewSize=512m -XX:MaxPermSize=512m  将这段代码粘贴到 VM options 后面的文本中.

关于Android创建虚拟机出现Failed to allocate memory: 8解决办法

开发前期使用eclipse,后来手贱又安装了Android studio,创建虚拟机后eclipse打不开已经创建好的虚拟机,哇擦~这也冲突??? 查了好多资料,结果发现,只需要直接在新建模拟器的时候把它的内存RAM设置在1024以下就可以,我改成了512 至于为什么内存改低了就可以,留待以后探索吧....也希望大神能够指点,谢谢~

Android 启动模拟器是出现“Failed to allocate memory: 8”错误提示的原因及解决办法

原因:设置了不正确AVD显示屏模式,4.0版默认的模式为WVGA800,改成WXGA720后导致不支持. 解决办法:编辑这个AVD,将Skin -> Build in的参数改回默认参数.

在Android Studio中创建项目和模拟器

北京电子科技学院 实      验      报      告 课程:移动平台应用开发实践  班级:201592  姓名:杨凤  学号:20159213 成绩:___________  指导老师:娄嘉鹏   实验日期 :2015.11.1 实验名称:           在Android Studio中创建项目和模拟器 实验内容:       1.在Android Studio中创建项目 2.创建并启动Android模拟器 一.实验简介 熟悉Android的开发环境.一些基本的操作技巧以及调试技