41 lines
3.2 KiB
Markdown
41 lines
3.2 KiB
Markdown
# Практическая работа. Жизненный цикл Activity
|
||
|
||
Создать приложение для платформы Android с возможностью отслеживания состояний активности.
|
||
|
||
1. Приложение должно иметь главную стартовую активность с именем класса *MainActivity*. В активности создаются всплывающие текстовые подсказки (*Toast*). Значения текстовых надписей определены в строковых ресурсах приложения. Длительность показа задается константой `Toast.LENGTH_LONG`. Контекстом выступает текущая активность. Описание подсказок приведено в таблице 1.
|
||
|
||
| № | Отслеживаемый метод | Строковый ресурс | Значение ресурса |
|
||
| :-: | :-----------------: | :--------------: | :--------------: |
|
||
| 1 | `onCreate` | `ncreate` | Activity CREATED |
|
||
| 2 | `onStart` | `nstart` | Activity STARTED |
|
||
| 3 | `onResume` | `nresume` | Activity RESUMED |
|
||
| 4 | … | `npause` | Activity PAUSED |
|
||
| 5 | … | `nstop` | Activity STOPPED |
|
||
| 6 | … | `nrestart` | Activity RESTARTED |
|
||
| 7 | `onDestroy` | `ndestroy` | Activity DESTROYED |
|
||
|
||
*Таблица 1. Настройки всплывающих подсказок*
|
||
|
||
2. Приложение должно корректно работать на устройствах с SDK 26 и выше.
|
||
3. Приложение должно корректно обрабатывать изменение конфигурации устройства с выводом соответствующих сообщений.
|
||
|
||
**Функционал**
|
||
|
||
1. При запуске приложения на экране отображается MainActivity, и по очереди высвечиваются Toast с сообщениями о срабатывании методов:
|
||
`onCreate` -> `onStart` -> `onResume`.
|
||
2. При повороте экрана вызываются переопределённые методы:
|
||
`onDestroy` -> `onCreate` -> `onStart` -> `onResume`.
|
||
3. При каждом втором повороте экрана метод `onDestroy` показывает *Toast* с соответствующей надписью.
|
||
4. При каждом повороте экрана методы `onCreate`, `onStart`, `onResume` показывают *Toast* с соответствующей надписью.
|
||
|
||
| № | Название теста | Баллы | Описание |
|
||
| :-: | :-----------------: | :--------------: | :-------------- |
|
||
| 1 | checkPortait | 2 | Проверка последовательности Toast при запуске активности |
|
||
| 2 | checkLandscape | 4 | Проверка обработки поворотов экрана |
|
||
| 3 | checkStringRes | 1 | Проверка наличия строковых ресурсов |
|
||
|
||
*Таблица 2. Критерии оценивания и тесты*
|
||
|
||
![screenshot](/doc/scrennshot.png)
|
||
|
||
*Пример интефрейса* |