В Android утечки памяти происходят, когда объекты, которые больше не нужны, не освобождаются сборщиком мусора (Garbage Collector) из-за оставшихся на них ссылок. Основные причины утечек:
- Долгоживущие ссылки: Например, статические ссылки на объекты активности или контекста.
- Неудаленные слушатели: Если не удалить слушатели, такие как
BroadcastReceiver
или коллбэки. - Анонимные классы: Использование внутренних анонимных классов может захватывать ссылку на внешний класс.
Для обнаружения утечек можно использовать инструмент LeakCanary.