android - установить будильник только один раз - AlarmManager vs WorkManager? - PullRequest
0 голосов
/ 27 мая 2020

при нажатии кнопки, я хочу установить будильник, который будет звучать и показывать настраиваемый диалог через один час. Если этот диалог не закрыт, мне нужно показать тот же диалог через 15 минут. Я проверил AlarmManager и WorkManager , но не знаю, какой из них использовать. Я прочитал, что AlarmManager лучше в тех случаях, когда необходимо запускать сигналы тревоги в указанное c время, но я ничего не видел о планировании сигналов тревоги только один раз (что меня интересует, и я не знаю, как это сделать), я прочитали только о планировании повторяющихся сигналов будильника.

Есть совет?

1 Ответ

1 голос
/ 27 мая 2020

Вы можете установить будильник только один раз, как показано здесь . Будет установлен будильник на 15 минут. В случае одного часа вы можете настроить соответственно.

private PendingIntent alarmIntent;

alarmMgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
alarmIntent = PendingIntent.getBroadcast(context, 0, intent, 0);

alarmMgr.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,
        SystemClock.elapsedRealtime() +
        15 * 60 * 1000, alarmIntent);
...