Класс Android, обеспечивающий доступ к системным службам сигнализации.

AlarmManager Класс обеспечивает доступ к системным службам сигнализации. Это позволяет запланировать запуск приложения в определенный момент в будущем. Когда срабатывает сигнал тревоги, Intent, зарегистрированный для него, транслируется системой, автоматически запуская целевое приложение, если оно еще не запущено. Зарегистрированные сигналы тревоги сохраняются, пока устройство находится в спящем режиме (и при желании могут разбудить устройство, если они выключаются в течение этого времени), но будут сброшены, если оно выключено и перезагружено.

AlarmManager удерживает активную блокировку ЦП, пока выполняется метод onReceive() получателя тревоги. Это гарантирует, что телефон не будет спать, пока вы не закончили обработку трансляции. Как только onReceive() возвращается, AlarmManager снимает эту блокировку. Это означает, что телефон в некоторых случаях будет спать, как только ваш метод onReceive() завершится. Если ваш приемник будильника позвонил Context.startService(), возможно, телефон спит до запуска запрошенной услуги. Чтобы предотвратить это, ваши BroadcastReceiver и Service должны будут реализовать отдельную политику блокировки пробуждения, чтобы телефон продолжал работать до тех пор, пока служба не станет доступной.

AlarmManager ссылка