Расскажите про Handler

Handler с английского переводится как “обработчик”. Этот класс используется вместе с MessageQueue и Looper.

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

Так же хендлер позволяет добавлять сообщения (объекты Message). Ну и собственно он может обрабатывать сообщения, от чего и пошло его название

Вот список важных методов Handler:

  1. post()/postDelayed(). Позволяет добавлять объекты Runnable в очередь сообщений
  2. obtainMessage(). Позволяет создавать свои сообщения (на самом деле это будет не создание новых сообщений, а переиспользование старых, потому что каждый раз выделять память на новое сообщение было бы нерационально, учитывая сколько сообщений проходит через очередь в секунду).
  3. sendMessage()/sendEmptyMessage()/sendMessageDelayed() и тд. Позволяет добавлять сообщения (объекты Message) в очередь сообщений.
  4. handleMessage(). Данный метод позволяет обрабатывать сообщения, от чего и пошло его название.

Тем не менее, данный метод не реализован в стандартном Handler, можно либо передать объект Handler.Callback, чтобы обрабатывать сообщения, либо же создать своего наследника Handler с реализованным методом handleMessage()

Учитесь в сообществе

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

Peer review и код от других студентов. Код-ревью от менторов. Учитесь не в одиночку, а в команде

  • Peer review: проверяйте код других и получайте фидбек на свой — учитесь видеть ошибки
  • Сообщество: чаты, обсуждения, помощь друг другу — не застрянете в одиночку
  • Менторы: код-ревью от практикующих разработчиков на сложные задачи
Присоединиться →
Учитесь в сообществе AndroidSprint — обучающая платформа
Присоединиться →

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

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

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

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

Узнать подробнее
Курс 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.
Узнать подробнее
ИИ-ментор код-ревью и голосовые собесы
Открыть