Для моего уже развернутого приложения я стараюсь не допустить утечки памяти.Я использую утечку в отладочных версиях, а также инструменты для профилирования памяти в студии Android, чтобы обнаружить возможные утечки.До сих пор я проверил это на 6 различных устройствах.5 из них я непосредственно отлаживал с помощью профилирования памяти и не мог найти никаких утечек.Старые Действия и Фрагменты были должным образом собраны мусором даже после нескольких вращений и так далее.На этих 5 устройствах утечка может также не показывать никаких утечек.
Однако 6-е устройство с самого начала показало уведомление о утечке.Некоторые фрагменты просочились.К сожалению, я не смог запустить это 6-е устройство через профилирование памяти, так как это не мой смартфон.Это устройство HUAWEI с Android 8. У меня есть другое устройство Android 8 от XIAOMI, которое не показывает никаких утечек.
Вопросы:
У разных моделей / брендов /У CustomRoms есть разные (уникальные / пользовательские) механизмы сбора мусора?Я думал, что нет.
Если нет, то есть ли простое объяснение этому поведению утечки или может быть неисправность?
Это так?Возможно ли, что Фрагмент или Действие требует 2 или более попыток сбора мусора, чтобы их можно было собрать?Если да, может ли это вызвать странное поведение?(Я думаю, чтоcancanary пытается один раз выполнить gcs и сбросить память, если ссылка все еще существует)
Спасибо, ребята!