只是跑了个很小的APK应用程序啊!应该还不至于会真正的内存不足!不知道是不是ANDROID 1。6应用程序对图片有特别的要求还是什么其它原因!

解决方案 »

  1.   

    具体的LOGCAT错误消息!!!
    E/SurfaceFlinger(  181): not enough memory for layer bitmap size=770048 (w=800, h=480, stride=800, format=4)
    D/MemoryDealer(  181):   LayerBitmap (0x1fed20, size=8388608)
    D/MemoryDealer(  181):     0: 001fed58 | 0x00000000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     1: 0020de08 | 0x000BC000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     2: 002647d8 | 0x00178000 | 0x000B2000 | F 
    D/MemoryDealer(  181):     3: 00213ac8 | 0x0022A000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     4: 000af160 | 0x00234000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     5: 001fa8d8 | 0x002F0000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     6: 002417f8 | 0x002FA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     7: 002648f0 | 0x003B6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     8: 001ab528 | 0x00472000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     9: 00266f78 | 0x0052E000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    10: 002664a8 | 0x005EA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    11: 0027feb8 | 0x006A6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    12: 00261280 | 0x00762000 | 0x0009E000 | F 
    D/MemoryDealer(  181):   size allocated: 7012352 (6848 KB)
    E/SurfaceFlinger(  181): resizing buffer 1 to (800,480) failed [fffffff4] Unknown error: -12
    E/SurfaceFlinger(  181): not enough memory for layer bitmap size=770048 (w=800, h=480, stride=800, format=4)
    D/MemoryDealer(  181):   LayerBitmap (0x1fed20, size=8388608)
    D/MemoryDealer(  181):     0: 001fed58 | 0x00000000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     1: 0020de08 | 0x000BC000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     2: 002647d8 | 0x00178000 | 0x000B2000 | F 
    D/MemoryDealer(  181):     3: 00213ac8 | 0x0022A000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     4: 000af160 | 0x00234000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     5: 001fa8d8 | 0x002F0000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     6: 002417f8 | 0x002FA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     7: 002648f0 | 0x003B6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     8: 001ab528 | 0x00472000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     9: 00266f78 | 0x0052E000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    10: 002664a8 | 0x005EA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    11: 0027feb8 | 0x006A6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    12: 00261280 | 0x00762000 | 0x0009E000 | F 
    D/MemoryDealer(  181):   size allocated: 7012352 (6848 KB)
    E/SurfaceFlinger(  181): createNormalSurfaceLocked() failed (Out of memory)
    W/WindowManager(  181): OutOfResourcesException creating surface
    I/WindowManager(  181): Out of memory for surface!  Looking for leaks...
    W/WindowManager(  181): No leaked surfaces; killing applicatons!
    W/ActivityManager(  181): Killing processes for memory at adjustment 4
    W/ActivityManager(  181): Killing for memory: ProcessRecord{43a72830 234:android.process.acore/10004} (adj 4)
    I/Process (  181): Sending signal. PID: 234 SIG: 9
    W/WindowManager(  181): Looks like we have reclaimed some memory, clearing surface for retry.
    W/WindowManager(  181): Due to memory failure, waiting a bit for next layout
      

  2.   

    网上相关问题帖子memory Errorhttp://www.andengine.org/forums/bugs/memory-error-t411.html
      

  3.   

    activity透明化处理时发生内存益出http://bbs.gfan.com/viewthread.php?tid=83065
      

  4.   

    6M的图片...换个格式吧,png的怎么也不会到6M啊
      

  5.   


    那里有6M?size=770048 ,也就752KB。我用的就是PNG图片,在PC上显示才624KB。你说的6M怎么看出来的?
      

  6.   

    D/MemoryDealer(  181):   size allocated: 7012352 (6848 KB)通过这个算出来还真的是6M多啊!不过我的机子可是有20多MB的内存啊!即使图片要用6MB也应该是没什么问题的啊!
    LayerBitmap是个什么概念?多层图片?layer是层的意思。
    D/MemoryDealer(  181):   LayerBitmap (0x1fed20, size=8388608)
    D/MemoryDealer(  181):     0: 001fed58 | 0x00000000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     1: 0020de08 | 0x000BC000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     2: 002647d8 | 0x00178000 | 0x000B2000 | F 
    D/MemoryDealer(  181):     3: 00213ac8 | 0x0022A000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     4: 000af160 | 0x00234000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     5: 001fa8d8 | 0x002F0000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     6: 002417f8 | 0x002FA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     7: 002648f0 | 0x003B6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     8: 001ab528 | 0x00472000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     9: 00266f78 | 0x0052E000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    10: 002664a8 | 0x005EA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    11: 0027feb8 | 0x006A6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    12: 00261280 | 0x00762000 | 0x0009E000 | F 
    D/MemoryDealer(  181):   size allocated: 7012352 (6848 KB)上面的消息显示有13层图片?第3个图片加载和最后一个图片加载分配内存的时候失败了?标为F了。
      

  7.   


    D/MemoryDealer(  181):   LayerBitmap (0x1fed20, size=8388608)
    D/MemoryDealer(  181):     0: 001fed58 | 0x00000000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     1: 0020de08 | 0x000BC000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     2: 002647d8 | 0x00178000 | 0x000B2000 | F 
    D/MemoryDealer(  181):     3: 00213ac8 | 0x0022A000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     4: 000af160 | 0x00234000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     5: 001fa8d8 | 0x002F0000 | 0x0000A000 | A 
    D/MemoryDealer(  181):     6: 002417f8 | 0x002FA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     7: 002648f0 | 0x003B6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     8: 001ab528 | 0x00472000 | 0x000BC000 | A 
    D/MemoryDealer(  181):     9: 00266f78 | 0x0052E000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    10: 002664a8 | 0x005EA000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    11: 0027feb8 | 0x006A6000 | 0x000BC000 | A 
    D/MemoryDealer(  181):    12: 00261280 | 0x00762000 | 0x0009E000 | F 
    D/MemoryDealer(  181):   size allocated: 7012352 (6848 KB)
    为何第3个图片跟最后一个图片加载会失败?他们对应的大小为0x000B2000和0x0009E000,但分配0x000BC000大小的内存都没失败啊?难道有什么内存对齐的问题存在?还是ANDROID对图片有特别的要求?
    图片要特别调整?
      

  8.   


    奇怪的是在ANDROID2。2的模拟器上不会报上面的错误消息。ANDROID版本的问题?我的系统不能调试,定位不到报错代码的地方!!!关键在ANDROID2。2模拟器上又没有这样的问题。看来的换个1。6的模拟器看看!!!
      

  9.   


    在ANDROID1。6的模拟器上也会报上面的内存错误,但在ANDROID2。2的模拟器上不会,看来真的可能是ANDROID的版本问题!!!
      

  10.   

    还是没找到问题所在,查ANDROID的源代码也不大明白。android系统原理及开发要点详解.pdf有对SurfaceFlinger的介绍