2022-12-20 12:24:15 +03:00
2022-12-20 12:24:15 +03:00
2022-12-20 12:24:15 +03:00
2022-12-20 12:24:15 +03:00
2022-12-20 12:24:15 +03:00
2022-12-20 12:24:15 +03:00
2022-12-20 12:24:15 +03:00
2023-12-22 16:07:04 +00:00
2022-12-20 12:24:15 +03:00

Практическая работа. BroadcastReceiver

В данном практическом задании предлагается дополнить существующий проект-заготовку Android приложения.

Советуем сначала склонировать шаблон проекта и открыть его в Android Studio или IntelliJ IDEA, так как этот процесс может занимать продолжительное время.

Допишите код проекта, чтобы приложение отвечало следующим требованиям:

  1. Нестатический метод makeBroadcastReceiver(), определённый в классе MainActivity, возвращает объект BroadcastReceiver
  2. Объект BroadcastReceiver, возвращаемый методом makeBroadcastReceiver(), способен обрабатывать широковещательные намерения android.intent.action.* (полный список представлен ниже)
  3. При запуске приложения в 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.

Константы Intent.*

  1. ACTION_AIRPLANE_MODE_CHANGED
  2. ACTION_APPLICATION_RESTRICTIONS_CHANGED
  3. ACTION_APPLICATION_LOCALE_CHANGED
  4. ACTION_ASSIST
  5. ACTION_BATTERY_CHANGED
  6. ACTION_BATTERY_LOW
  7. ACTION_BATTERY_OKAY
  8. ACTION_CALL
  9. ACTION_DATE_CHANGED
  10. ACTION_DEFAULT
  11. ACTION_HEADSET_PLUG
  12. ACTION_LOCALE_CHANGED
  13. ACTION_TIME_TICK

Сдать в систему тестирования необходимо zip архив, в корневом каталоге которого располагается дополненный проект Android Studio/IntelliJ IDEA. После загрузки zip архива приложение будет запущено в системе автоматического тестирования для проверки на соответствие техническому заданию.

При сборке проекта вcе изменения в файле build.gradle будут проигнорированы будут использованы зависимости только из шаблона-заготовки; не изменяйте пакет приложения.

Тестирование одной посылки может длиться до 3-x минут, после завершения тестирования будет доступна информация об общем числе тестов и числе пройденных тестов. Количество посылок в систему не ограничено. Штраф за повторные попытки не начисляется.

Тест Балл Проверка
113 Intent.ACTION_* 13 Обработка широковещательных намерений

Таблица 2. Критерии оценивания и тесты

Description
No description provided
Readme 142 KiB
Languages
Java 63.4%
Kotlin 36.6%