BroadcastReceiver – один из
четырех основных компонентов. Реализует шаблон
publisher-subscriber и используется для получения сообщений системы, других компонентов приложения и сторонних приложений.
События обрабатываются в методе
BroadcastReceiver.onReceive(), который вызывает система.
BroadcastReceiver может быть точкой входа в приложение. Ресиверы, зарегистрированные в манифесте, принимают сообщения даже если приложение не запущено. В этом случае система стартует процесс с приложением и вызывает
Application.onCreate() до вызова
BroadcastReceiver.onReceive().
Пример использования: регистрация ресивера для прослушивания событий изменения языка в системе. Для этого используется
ACTION_LOCALE_CHANGED. Полезно, если некоторые ресурсы (например сообщения об ошибках) локализуются на бэкенде. В этом случае можно отправить запрос с новой локалью на бэк.