Внешнее распределение слишком велико для этого процесса в Android

Я получаю ошибки "внешнего распределения слишком большого для этого процесса" в моем приложении. Множество из них сразу:

11-16 10:56:59.230: ERROR/dalvikvm-heap(2875): 1303680-byte external allocation too large for this process.
11-16 10:56:59.230: ERROR/GraphicsJNI(2875): VM won't let us allocate 1303680 bytes
11-16 10:56:59.230: ERROR/dalvikvm-heap(2875): 1536000-byte external allocation too large for this process.
11-16 10:56:59.230: ERROR/GraphicsJNI(2875): VM won't let us allocate 1536000 bytes

Похоже, что они создаются во время рендеринга макета после загрузки больших растровых изображений. Ошибки, однако, не создаются, пока растровое изображение декодируется.

Как я могу отладить эти ошибки? Любые дополнительные указатели?

Ответы

Ответ 1

Комментарий adamp был ответом в моем конкретном случае:

Структура часто захватывает представления на экране во временные растровые изображения для производительность графики. Это выглядит как ваше приложение подталкивает его предел памяти уже и это ударяет его. Взгляните на другие предложения по ограничению использования памяти приложения.

Ответ 2

Если вы используете потоки, отладчик может быть источником проблемы. Если вы запустите приложение под отладчиком, то все созданные потоки будут сохранены отладчиком, даже когда они будут завершены. Это приводит к ошибкам памяти, которые не будут выполняться, когда приложение работает без отладчика.

http://code.google.com/p/android/issues/detail?id=7979