2014-10-05 1 views
0

Я пытаюсь скопировать часть исходного изображения. Я декодировал ресурс в растровое изображение с отключенной опцией inScaling, поэтому я могу обрезать изображение с реального размера изображения, но я выхожу из OutOfMemoryErorr.Как копировать часть изображения SOURCE android - outOfMemoryError, выкинутое при попытке декодирования в растровое изображение

Я прочитал мое устройство (S3) память с

Log.i("CropParams memory", String.valueOf(Runtime.getRuntime().maxMemory()));

и он показывает 64 Мбайт.

Мне бы очень хотелось обрезать реальный размер изображения и узнать, что именно вызывает outOfMemoryError, поэтому я знаю, как управлять такими ситуациями. Это конкретное изображение 2448x3264 и имеет 3,41 МБ.

Почему именно это изображение вызывает эту ошибку?

Благодаря

+0

как примечание стороны, размер файла (3.41MB) совершенно не имеет значения. Фактический размер декодированного изображения составляет 2448 * 3264 * 4 = ~ 32 МБ – njzk2

ответ

0

См my answer on another question о том, как сбросить память кучи, когда вы получаете OutOfMemoryError. С файлом Hprof вы сможете проанализировать использование памяти, как описано here.

Смежные вопросы