通过android AlarmManager在两次之间完成一项工作

时间:2018-04-09 12:20:51

标签: android alarmmanager

我想通过android AlarmManager开始并完成重复任务,但我只能在指定时间启动它。 如何设置任务的结束时间 样品: 从8:15开始 完成21:45

AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);

Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR_OF_DAY,8);
cal.add(Calendar.MINUTE,15);

long time = cal.getTimeInMillis();

Intent i = new Intent(MainActivity.this, MyReceiver.class);

PendingIntent pi = PendingIntent.getBroadcast(MainActivity.this, 0, i, 0);

am.setInexactRepeating(AlarmManager.RTC_WAKEUP,time,pi);

1 个答案:

答案 0 :(得分:2)

您无法指定警报管理器的结束时间,但您可以执行的操作是检查当前时间并决定是否执行该任务。因此,如果时间过了21:45,你只是不做任何事情或取消它。