安排一个重复的闹钟
Schedule a repeating alarm clock
我正在尝试为特定时间安排重复闹钟(每周重复)。我得到的最接近的是:
获取准确时间:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, alarmHour);
calendar.set(Calendar.MINUTE, alarmMinute);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
calendar.add(Calendar.DATE, dateDelta);
long time = calendar.getTimeInMillis();
然后设置闹钟(我的问题来了):
val clockInfo = AlarmManager.AlarmClockInfo(time, homePI)
alarmManager.setAlarmClock(clockInfo, alarmTriggerPI)
问题是要使其重复,我需要再次手动触发此代码。
如果我使用 setRepeating
而不是 setAlarmClock
那么我会丢失警报通知(对于较新的手机)。
同样,这个想法只是启动一个正常的闹钟,如果设置为在星期五响起,它将在每个星期五响起。
Mike 的评论是正确答案。简而言之,你必须手动触发它。
我正在尝试为特定时间安排重复闹钟(每周重复)。我得到的最接近的是:
获取准确时间:
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, alarmHour);
calendar.set(Calendar.MINUTE, alarmMinute);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
calendar.add(Calendar.DATE, dateDelta);
long time = calendar.getTimeInMillis();
然后设置闹钟(我的问题来了):
val clockInfo = AlarmManager.AlarmClockInfo(time, homePI)
alarmManager.setAlarmClock(clockInfo, alarmTriggerPI)
问题是要使其重复,我需要再次手动触发此代码。
如果我使用 setRepeating
而不是 setAlarmClock
那么我会丢失警报通知(对于较新的手机)。
同样,这个想法只是启动一个正常的闹钟,如果设置为在星期五响起,它将在每个星期五响起。
Mike 的评论是正确答案。简而言之,你必须手动触发它。