Внешнее распределение слишком велико для этого процесса в Android - PullRequest
15 голосов
/ 16 ноября 2010

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

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

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

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

Ответы [ 2 ]

4 голосов
/ 07 февраля 2011

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

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

4 голосов
/ 07 февраля 2011

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...