Этот вопрос проверяет умение работать с короткоживущими приёмниками и обходить ограничения системы.
Короткий ответ
BroadcastReceiver — компонент, который получает Intent кратковременно в onReceive. По умолчанию после завершения метода система убивает процесс или освобождает ресурсы. Чтобы продлить время, внутри onReceive можно вызвать goAsync() и получить PendingResult, затем выполнить асинхронную работу в другом потоке и в конце вызвать pendingResult.finish(). Либо сразу стартовать Foreground Service для длительной работы.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.