Я разрабатываю приложение, которое проводит пользователя по плану тренировок. Это тренажер для бега, который использует звуковые подсказки, чтобы пользователь мог знать, когда ходить, бегать и т. Д. В разные моменты во время тренировки.
Весьма вероятно, что телефон будет заблокирован и находится у кого-то в кармане во время работы приложения, поэтому я изучаю способы, с помощью которых я могу слышать поступающие сигналы. В данный момент я просто тестирую использование Handler в локальной службе для планирования следующего вызова. На некоторых устройствах это работает лучше, чем я ожидал, но на других служба перестает работать, когда телефон заблокирован.
Я знаю, что для меня доступно множество вариантов: оставьте на телефоне блокировку будильника, запланируйте аварийные сигналы, (возможно? Не уверен в этом), измените приоритет службы и, возможно, больше.
Итак, что люди считают лучшим подходом? Имейте в виду, что это не «обычный» сервис - обычно он будет работать не более получаса, три раза в неделю, и многие его пользователи будут воспроизводить музыку во время работы, поэтому телефон довольно вряд ли спать в любом случае. Поэтому я думаю, что обычные предостережения по поводу разряжающих батарею пробужденных замков в этом случае могут не иметь большого значения?
В настоящее время я нацеливаюсь на уровень API 8 как минимум.