Расскажите про утечку Activity / Context

Утечка активити/контекста в Android это утечка памяти, вызванная тем что активити/контекст уже уничтожены, но на них все еще есть внешние ссылки(например в статик переменной). В итоге сборщик мусора не может удалить эту активити/контекст, хотя он по сути уже бесполезен, тк onDestroy() была вызвана. И так как активити и контекст это тяжелые объекты, которые занимают много места в памяти, то такая утечка в лучшем случае приведет к ухудшению быстродействия, а если таких утечек несколько то приложение вообще может вылететь, так как для него просто не хватит места в памяти.

При этом стоит понимать, что активити/контекст не обязательно должны напрямую лежать в статик переменной, они могут находится внутри другой переменной, которая будет в статике.

Вот пример того, как не надо делать:

open class Connection(
    private val mActivity: Activity,
    input: BufferedReader,
    output: PrintWriter,
    val host: Host,
    private val mSendListener: SendListener,
    receiveListener: ReceiveListener
)

object Const {
    @JvmStatic
    var currentConnection: Connection? = null
}

AI-ментор знает весь ваш код

Обучающая платформа AndroidSprint

AI-ментор помнит каждую вашу задачу и весь прогресс. Даёт подсказки в контексте урока, а не общие ответы из интернета

  • Контекст 24/7: ИИ видит весь ваш путь обучения и код — помогает именно с вашей задачей
  • Учит думать: подсказки, а не готовые решения — развиваете навык решения проблем
  • Треки: Android, Backend, QA — от нуля до Junior за 10 месяцев
Попробовать AI-ментора →
AI-ментор знает весь ваш код AndroidSprint — обучающая платформа
Попробовать AI-ментора →

Бесплатная диагностика с сениор разработчиком

Запишитесь на консультацию — перезвоним в рабочие часы

Или свяжитесь удобным способом

Вам также может быть интересно

Узнать подробнее
Курс AndroidSprint

Глубокое обучение Android разработке с 0 до получения оффера. Только персональная практика с гарантией получения продуктового опыта.

Курс AndroidSprint - Глубокое <strong>обучение Android разработке с 0 до получения оффера</strong>. Только персональная практика с гарантией получения продуктового опыта.
Узнать подробнее
Узнать подробнее
Практикум по Kotlin

Изучение Котлин с 0 для профессиональной разработки. Личный ментор и разбор кода задач через git-flow.

Практикум по Kotlin - Изучение Котлин <strong>с 0 для профессиональной разработки</strong>. Личный ментор и разбор кода задач через git-flow.
Узнать подробнее
Узнать подробнее
Бесплатные уроки по Kotlin разработке

Самостоятельное освоение базы по языку для дальнейшего развития в Android/back-end разработке или в автотестах.

Бесплатные уроки по Kotlin разработке - <span>Самостоятельное освоение базы по языку для дальнейшего развития в Android/back-end разработке или в автотестах.</span>
Узнать подробнее
Узнать подробнее
Onboarding в разработку

Полное обучение Android разработке с нуля до получения оффера. Делаем упор на практику и обратную связь

Onboarding в разработку - <span>Полное обучение Android разработке с нуля до получения оффера. Делаем упор на практику и обратную связь</span>
Узнать подробнее
Узнать подробнее
Обучающий Kotlin телеграм бот (с тестами)

Ваш основной инструмент для изучения основ языка. Бесплатные тесты и практика внутри.

Обучающий Kotlin телеграм бот (с тестами) - Ваш основной <span>инструмент для изучения основ языка.</span> Бесплатные тесты и практика внутри.
Узнать подробнее
Узнать подробнее
Бесплатные уроки по Android разработке

Самостоятельное обучение разработке Андроид приложений. Понятные видеоуроки с разжеванными примерами.

Бесплатные уроки  по Android разработке - Самостоятельное <span>обучение разработке Андроид приложений.</span> Понятные видеоуроки с разжеванными примерами.
Узнать подробнее
Узнать подробнее
Курс по UI/Unit тестированию

Для ручных тестировщиков, которые готовы осваивать автотесты с использованием актуального стека технологий. [в разработке]

Курс по UI/Unit тестированию - Для ручных тестировщиков, которые <span>готовы осваивать автотесты</span> с использованием актуального стека технологий. [в разработке]
Узнать подробнее
Узнать подробнее
Обучающий Android телеграм бот (с тестами)

Бесплатные теоретические тесты для самопроверки. А также информер на практических спринтах по Android.

Обучающий Android телеграм бот (с тестами) - Бесплатные <span>теоретические тесты для самопроверки.</span> А также информер на практических спринтах по Android.
Узнать подробнее
ИИ-ментор код-ревью и голосовые собесы
Открыть