Например, смотрите этот коммит , где я добавил опцию для изменения интервала синхронизации в одном из моих приложений. Этот коммит затем был расширен за счет динамического выбора того, как это делается, на основе уровня API операционной системы, на которой он в данный момент работает, поэтому он использует встроенный метод для 8+ и сигнал тревоги для <8 . </p>
Суть в том, что установка интервала на api <8 создает тревогу с использованием api AlarmManager с указанным интервалом, который запускает BroadcastReceiver для вызова requestSync. </p>