У меня проблемы с памятью и думаю, что это может быть связано с созданием больших растровых изображений.Работа с большими растровыми изображениями (создание небольших растровых изображений для создания обоев)
Задача состоит в том, чтобы получить довольно маленькое изображение плитки и создать более крупное черепичное изображение и установить это как обои для телефона. То, как я делаю это:
1) Создайте представление, которое 2 * ширина экрана, 1 * экран высота
2) Установите вид фона на BitmapDrawable с режимом, установленным в плитке повторить
3) Создание растрового изображения с размерами просмотров
4) Протяните вид растрового изображения с помощью: view.draw (новый холст (растровых))
5) набор wallpper: getApplicationContext() .setWallpaper (б itmap)
Это прекрасно работает на моем телефоне (HTC Magic) и других телефонах, которые я пробовал. Но я получаю сообщения об ошибках, связанные с этой проблемой. Я пытался воссоздать проблему путем удвоения требуемых размеров и проблема, кажется, происходит в 4-м этапе, когда представление втягиваются в растровом изображении:
ERROR/dalvikvm куче (124): Heap Массаж нужен (7372800-байтовое внешнее размещение слишком велико)
Я не уверен, как это решить. Пожалуйста помоги! Благодаря
Так как Android 4.0 есть намного лучше отладки возможности доступна, так как память, используемая для выделения растрового теперь корректно указана в качестве памяти, используемой в куче мониторе в DDMS. Pre-4.0 память, используемая для расстановки растровых изображений, не отображалась на мониторе кучи, поэтому можно было только догадываться, сколько памяти используется в реальности. Возможно, это поможет вам лучше отладить ваш код. – Dude