可以使用 AlarmManager 类来创建闹钟,并设置重复间隔。以下是创建一个每天早上 8:00 发出闹钟的示例代码:
AlarmManager alarmMgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, YourAlarmReceiver.class);
PendingIntent alarmIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, 8);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, alarmIntent);
上述代码会在每天早上 8:00 左右发出闹钟,并且设置了闹钟每天重复重复,直到通过 cancel() 方法或者关闭设备来结束。如果您需要更高的精度,可以考虑使用 setExact() 方法来代替 setRepeating() 方法。
可能会出现问题的地方: