Практическая работа. BroadcastReceiver
В данном практическом задании предлагается дополнить существующий проект-заготовку Android приложения.
Советуем сначала склонировать шаблон проекта и открыть его в Android Studio или IntelliJ IDEA, так как этот процесс может занимать продолжительное время.
Допишите код проекта, чтобы приложение отвечало следующим требованиям:
- Нестатический метод
makeBroadcastReceiver()
, определённый в классе MainActivity, возвращает объект BroadcastReceiver - Объект BroadcastReceiver, возвращаемый методом
makeBroadcastReceiver()
, способен обрабатывать широковещательные намеренияandroid.intent.action.*
(полный список представлен ниже) - При запуске приложения в TextView с
id/status_text
может быть установлен произвольный текст. При получении широковещательного сообщения в TextView устанавливается текст, соответствующий типу action (как на ниже). Например, при получении намеренияIntent.ACTION_ASSIST
в TextView должен быть установлен текст «ACTION_ASSIST
» (без кавычек).
№ | View type | id |
---|---|---|
0 | TextView | status_text |
Таблица 1. Элементы пользовательского интерфейса
Рекомендуется использовать Android Studio Dolphin 2021.3.1. В проекте gradle version 7.5, gradle plugin version 7.3.0.
- ACTION_AIRPLANE_MODE_CHANGED
- ACTION_APPLICATION_RESTRICTIONS_CHANGED
- ACTION_APPLICATION_LOCALE_CHANGED
- ACTION_ASSIST
- ACTION_BATTERY_CHANGED
- ACTION_BATTERY_LOW
- ACTION_BATTERY_OKAY
- ACTION_CALL
- ACTION_DATE_CHANGED
- ACTION_DEFAULT
- ACTION_HEADSET_PLUG
- ACTION_LOCALE_CHANGED
- ACTION_TIME_TICK
Сдать в систему тестирования необходимо zip архив, в корневом каталоге которого располагается дополненный проект Android Studio/IntelliJ IDEA. После загрузки zip архива приложение будет запущено в системе автоматического тестирования для проверки на соответствие техническому заданию.
При сборке проекта вcе изменения в файле build.gradle будут проигнорированы – будут использованы зависимости только из шаблона-заготовки; не изменяйте пакет приложения.
Тестирование одной посылки может длиться до 3-x минут, после завершения тестирования будет доступна информация об общем числе тестов и числе пройденных тестов. Количество посылок в систему не ограничено. Штраф за повторные попытки не начисляется.
№ | Тест | Балл | Проверка |
---|---|---|---|
1–13 | Intent.ACTION_* |
13 | Обработка широковещательных намерений |