1

我想做一个时间或日期监听器,例如每天早上 9 点调用一个活动。我不确定最好的方法是什么?我知道我可以使用警报管理器,但我不知道如何让它重复?

有人知道吗?非常感谢您提前。

加油:)

4

1 回答 1

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上午9 点(今天或明天),例如通过对象。RTCSystemClock.elapsedRealtime() + AlarmManager.INTERVAL_DAYCalendar

于 2012-06-18T15:07:51.573 回答