Утечки памяти Android при разработке макетов - PullRequest
0 голосов
/ 02 декабря 2011

Мое приложение разработано со всеми макетами в папке res, поскольку приложение обрабатывает изображения;он имеет дело с крупноразмерными растровыми изображениями и дает out of memmory error.Я хочу знать, каков хороший подход.

  1. Проектирование макетов программно
  2. Использование макетов из папки res.

Если я проектирую все макеты вЯ могу самостоятельно очистить все макеты в методе onDestroy(), чего не могу, если макеты объявлены в XML.

Ответы [ 2 ]

1 голос
/ 02 декабря 2011

Я думаю, что лучший способ - это использовать способ XML, потому что он более быстрый и многократно используемый ... если вы не передадите контекст текущего действия другому действию, Android позаботится об очистке ваших макетов.1002 * Вы можете очистить раздутые макеты в onDestroy (), если хотите, именно так, как вы делаете с кодированными макетами.Но я не думаю, что это необходимо.

0 голосов
/ 02 декабря 2011

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

Recycle освободит собственное хранилище, которое растровые изображения занимают в текущих версиях Android.Маловероятно, что память, используемая вашим макетом, вызовет проблемы с памятью.Сконцентрируйтесь на растровых объектах, которые вы создаете.

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