无法在客户端映射内存:内存不足android

时间:2015-12-10 11:53:13

标签: android out-of-memory

我在主要活动中有列表。 每次单击列表项,它都会使用webview打开活动。我的情况是: 单击列表项,使用webview打开活动, 加载,比我按下手机的硬件后退按钮,我再次进行主要活动。 这种情况我重复了几次(30)。之后我的应用程序崩溃了,我有这个错误:

E/OpenGLRenderer﹕ GL error:  Out of memory!

E/qdmemalloc﹕ ion: Failed to map memory in the client: Out of memory

E/qdgralloc﹕ Could not mmap handle 0x60b6560, fd=672 (Out of memory)

E/qdgralloc﹕ gralloc_register_buffer: gralloc_map failed

W/GraphicBufferMapper﹕ registerBuffer(0x60b6560) failed -12 (Out of memory)

E/GraphicBuffer﹕ unflatten: registerBuffer failed: Out of memory (-12)

E/Surface﹕ dequeueBuffer: IGraphicBufferProducer::requestBuffer failed: -12

W/Adreno-EGLSUB﹕ <DequeueBuffer:736>: dequeue native buffer fail: Out of memory, buffer=0x0, handle=0x0

1 个答案:

答案 0 :(得分:0)

您应该在android:largeHeap="true"标记下的清单文件中加入application

是否应使用大型Dalvik堆创建应用程序的进程。这适用于为应用程序创建的所有进程。它仅适用于加载到进程中的第一个应用程序;如果您使用共享用户ID允许多个应用程序使用某个流程,则他们都必须始终如一地使用此选项,否则会产生不可预测的结果。

大多数应用程序不应该需要这个,而应该专注于减少整体内存使用量以提高性能。启用此功能也不能保证可用内存的固定增加,因为某些设备受其总可用内存的限制。

largeHeap documentation