我想创建一个时间或日期监听器,例如每天上午9点调用一个活动。我不确定最好的方法是什么?我知道我可以使用Alarm Manager,但我不知道如何重复它?
有谁知道吗?非常感谢你提前。
欢呼:)
答案 0 :(得分:4)
我知道我可以使用闹钟管理器,但我不知道如何重复它?
使用setRepeating()
并指定重复间隔INTERVAL_DAY
:
static void scheduleAlarms(Context ctxt) {
AlarmManager mgr=(AlarmManager)ctxt.getSystemService(Context.ALARM_SERVICE);
Intent i=new Intent(ctxt, ScheduledService.class);
PendingIntent pi=PendingIntent.getService(ctxt, 0, i, 0);
mgr.setRepeating(AlarmManager.ELAPSED_REALTIME,
SystemClock.elapsedRealtime() + AlarmManager.INTERVAL_DAY,
AlarmManager.INTERVAL_DAY, pi);
}
以上代码将设置一个警报,该警报将从现在起24小时后每24小时发出一次。要从早上9点开始,请将ELAPSED_REALTIME
替换为RTC
,并将SystemClock.elapsedRealtime() + AlarmManager.INTERVAL_DAY
替换为上午9点(今天或明天),例如通过Calendar
对象。