Я обнаружил, что производительность ухудшается после одного или нескольких поворотов экрана, и я полагаю, что это связано с тем, что основная активность приложения разрушается и воссоздается каждый раз, когда экран вращается и что мое приложение должно утечка памяти, когда это произойдет.Android: удаление/уничтожение объектов при повороте экрана
Я читал, что вопреки тому, что можно было ожидать, не все объекты, созданные основной деятельностью приложения (или в классах, вызываемых этим действием), уничтожаются, когда действие уничтожается. В частности, я думаю, что я прочитал (хотя теперь я не могу найти, где), что если View использует большой объект-член bitmap, тогда метод onDestroy() Activity должен быть перегружен, а растровое изображение должно быть явно переработано.
Существуют ли другие объекты, которые необходимо уничтожить или уничтожить при уничтожении Действия? Как насчет слушателей? Есть ли исчерпывающий учебник или руководство по этой теме?
Спасибо за ваш быстрый ответ. Поскольку я не знаю, как создать свою собственную услугу или разветвить поток, я полагаю, что для меня это не проблема. Одна вещь, которую я не понимаю, заключается в том, что основной принцип состоит в том, что GC будет восстанавливать память от объекта, когда он выходит из области видимости, почему это не происходит с растровым изображением, созданным в рамках Activity, когда эта активность заканчивается. Я чувствую, что, если бы понял, что у меня будет больше шансов идентифицировать другие вещи, которые могут вызвать подобные проблемы. – prepbgg
«Единственное, что я не понимаю, - это основной принцип, согласно которому GC будет восстанавливать память из объекта, когда он выходит из сферы действия, почему это не происходит с растровым изображением, созданным в рамках Activity, когда эта активность заканчивается» - - для начала GC не является немедленным. Это происходит асинхронно. Для больших блоков памяти, таких как растровые изображения, может быть слишком поздно, поэтому есть механизм для проактивного намека на Android, чтобы растровые изображения могли быть переработаны (например, для использования в следующем действии). – CommonsWare
Спасибо за объяснение. – prepbgg