Я работаю над своим первым приложением для Android, которое является большим приложением, хотя .. Я выполнил половину своего приложения, но меня беспокоит то, что память используется приложением. Первоначально я столкнулся с проблемами из-за исключений из памяти. Сначала я начал анализировать свое приложение с помощью MAT (Memory Analyzer Tool) в Android Studio, что было очень сложно отследить использование памяти. Мое приложение достигло выделенного пространства в 96 МБ и сбой. Затем после чтения в Интернете я использовал Leak Canary, который указывал на статические ресурсы, которые ели память .. и теперь мое приложение регулярно получает мусор, но все же я нахожу, что выделенное пространство остается около 70 мб. Как и мое приложение, начинается с выделения 30 Мб, когда я используйте приложение примерно на 2 минуты и вернитесь к начальному экрану, выделенное пространство не такое же, как начальное ... Для новичков, подобных мне, трудно отслеживать использование памяти в ядре usi ng MAT и есть лучший подход или инструмент, который дал бы мне ясную картину выделенного пространства объектами. Объекты, которые занимают максимальное пространство .. объекты, которые предположительно уничтожаются, но не уничтожаются ?? и сохранение памяти изображений и т. д. и т. д. Заранее спасибоПроблемы с управлением памятью Android
ответ
Здесь было несколько сообщений, связанных с управлением памятью.
Мы все были новичками в какой-то момент, и, к счастью, опыт и проблемы, подобные этим, оказались отличными «учителями».
Как я уже говорил в другом посте:
Это будет проблемы с памятью, конечно, вызывают такие как утечки, ОЫЕ и связывания ненужного ресурса. Существует абсолютно нет автоматического способа до освободить память. Вы не можете, ни при каких обстоятельствах, полагаться исключительно на сборщиком мусора
В принципе, вы должны убедиться, что вы выделить только необходимые ресурсы и освободить их, как только вы знаете, что не будете нуждаться в них больше в Lifecyce
Я написал более подробное объяснение с кодом (который вы можете реализовать на вашем проекте), чтобы справиться с проблемами памяти, которые можно найти здесь:
С уважением,
Одним из основных «выделений памяти» является растровое изображение. Иногда, когда вы загружаете изображение в вид, он использует много памяти в действии. Я рекомендовал использовать библиотеки, такие как Glide или Fresco, которые лучше справляются с проблемами памяти и имеют множество общих функций, уже реализованных.
Также вы можете попробовать освободить ресурсы для каждого вида деятельности в методе onDestroy.
Тем не менее, мне было бы здорово, если бы вы могли дать нам более глубокий обзор вашего проекта.
С уважением.
Мое приложение похоже на торговое приложение .. и я использую одно действие, а остальные все фрагменты. Я попробую предлагаемые библиотеки .. PLS lemme знаю, считаете ли вы что-нибудь полезное, что поможет мне преодолеть проблемы с памятью. – Moulesh
Проверьте ответ Рикардо Виейры и этот учебник, который может быть вам полезен. https://www.raizlabs.com/dev/2014/03/wrangling-dalvik-memory-management-in-android-part-1-of-2/ – kikettas
Да, я пройду через все ссылки и попытаюсь оптимизировать мое приложение к лучшему, я могу ... Спасибо за все ссылки n ссылок .. – Moulesh
Я прошел ваш ответ ... Это определенно поможет мне очистить память ... Ty – Moulesh