44 lines
3.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Практическая работа. BroadcastReceiver
В данном практическом задании предлагается дополнить существующий проект-заготовку Android приложения.
Советуем сначала склонировать шаблон проекта и открыть его в Android Studio, так как этот процесс может занимать продолжительное время.
Допишите код проекта, чтобы приложение отвечало следующим требованиям:
1. Нестатический метод `makeBroadcastReceiver()`, определённый в классе *MainActivity*, возвращает объект *BroadcastReceiver*
2. Объект *BroadcastReceiver*, возвращаемый методом `makeBroadcastReceiver()`, способен обрабатывать широковещательные намерения `android.intent.action.*` (полный список представлен [ниже](#actions))
3. При запуске приложения в *TextView* с `id/status_text` может быть установлен произвольный текст. При получении широковещательного сообщения в *TextView* устанавливается текст, соответствующий типу *action* (как на [ниже](#actions)).
Например, при получении намерения `Intent.ACTION_ASSIST` в *TextView* должен быть установлен текст «`ACTION_ASSIST`» (без кавычек).
| № | View type | id |
| - | :-------: | -- |
| 0 | *TextView* | `status_text` |
<a id="table1">*Таблица 1. Элементы пользовательского интерфейса*</a>
<a id="actions">**Константы Intent.\***</a>
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. После загрузки zip архива приложение будет запущено в системе автоматического тестирования для проверки на соответствие техническому заданию.
При сборке проекта вcе изменения в файле build.gradle будут проигнорированы будут использованы зависимости только из шаблона-заготовки; не изменяйте пакет приложения.
| № | Тест | Балл | Проверка |
| - | :-------: | :--: | -- |
| 113 | `Intent.ACTION_*` | 13 | Обработка широковещательных намерений |
<a id="table2">*Таблица 2. Критерии оценивания и тесты*</a>