Я пытаюсь разработать простой бипер с таймером, который пищает каждый час. Для времени я использую службу и обработчик, вот пример:
void onStart(...){
handler.postDelayed(timerRunnable, ONE_HOUR);
}
private Runnable timerRunnable = new Runnable() {
@Override
public void run() {
...beep
handler.postDelayed(timerRunnable, ONE_HOUR);
}
};
но метод run() будет запущен недетерминированно, я думаю, что это зависит от текущего использования устройства.
Я пробовал тот же сценарий с TimerTask и с «ручной» реализацией потока, но с тем же недетерминированным результатом.