/Timer_homework

Домашнее задание для лекции по взаимодействию с операционной системой в технополисе

Primary LanguageJava

TechnoTimer homework

Домашнее задание для лекции по взаимодействию с операционной системой в технополисе

От вас требуется написать простейшее приложение-таймер.

(UPD 10.04) Так же есть опция написать секундомер вместо таймера. Секундомер чуть легче, поэтому за него будет штраф в 0.95 балла(таким образом 10 из 10 реально получить и там и там)

Поддерживаемые функции:

  • запустить таймер
  • поставить таймер на паузу
  • сбросить таймер
  • (UPD 10.04) формат времени минуты:секунды:миллисекунды

Требования:

  • таймер не должен врать ;) то есть показывать не правильное время
  • если таймер запущен и приложение свернуто, показывать оповещение о том, что таймер продолжает работать.
  • оповещение должно поддерживать следующие опции:
    • кнопку паузы/продолжения таймера
    • кнопку сброса таймера
    • по клику на оповещение пользователь должен возвращаться в приложение
  • таймер должен продолжать работать пока пользователь явно не завершит его(сброс таймера)
  • если таймер не был сброшен, после перезапуска телефона приложение должно продолжить свою работу
  • приложение должно корректно работать на всех версиях OS Android. (Особенно на Android O и выше)
  • (UPD 10.04) В оповещении таймер должен обновляться раз в секунду. Для UI внутри приложения - в соответствии в максимально возможной частотой кадров.
  • (UPD 10.04) Приложение должно быть оптимизировано. То есть, к примеру, система должна иметь возможность убить ваше приложение для экономии ресурсов, когда таймер сброшен или остановлен и приложение свернуто.

Система оценивания:

  • не обязательно выполнять все пункты из требований
  • оценка на прямую зависит от количества выполненных пунктов
  • могут добавляться новые требования

Хинт: