Я разрабатываю приложение для будильника, в котором пользователь может создать будильник для определенного времени суток + можно выбрать дни недели для повторения будильника.
Сначала я попытался использовать следующий код (но это было неточно, и сигнал тревоги иногда срабатывал через 3-4 минуты):
alarmManager.setRepeating(
AlarmManager.RTC_WAKEUP,
calendar.timeInMillis,
AlarmManager.INTERVAL_DAY,
alarmIntent)
Теперь я использую следующий код (точный, но работает только один раз):
val calendar: Calendar = Calendar.getInstance().apply {
set(Calendar.HOUR_OF_DAY, alarm.hour)
set(Calendar.MINUTE, alarm.minute)
set(Calendar.SECOND, 0)
set(Calendar.MILLISECOND, 0)
}
alarmManager.setExactAndAllowWhileIdle(
AlarmManager.RTC_WAKEUP,
calendar.timeInMillis,
alarmIntent)
Теперь мне интересно, какое поведение можно ожидать, если я введу set(Calendar.DAY_OF_WEEK, dayOfWeek)
в коде выше (внутри Calendar.apply).
Вариант использования: пользователь выбирает понедельник и четверг для срабатывания будильника в 10:00.,
Мой вопрос: Будет ли срабатывать будильник каждый понедельник и четверг в 10:00 (если он не отменен) для каждой следующей недели или будет срабатывать будильник на текущую неделю?
PS Я спрашиваю, потому что, может быть, у кого-то есть опыт с этим, и я не хочу тратить 2-3 недели только на тестирование этого варианта использования.