我有一个活动,这里有两个按钮:
“选择闹钟时间”的按钮一。当我点击它时,TimePicker 会出现,我选择闹钟的时间。
“设置警报”的按钮二。当我点击它时,警报设置。
我在做什么 :
在设置的闹钟时间我会打电话给BroadcastReceiver
. 对于演示,我只打印我设置的警报时间和一个字符串Toast
什么是查询:
“如果我将闹钟时间设置为Current Time 4.00 PM并且我将闹钟时间设置为 6.00 PM。在这种情况下,Alarm 总是调用BroadcastReceiver
and it's Work Fine
。
BUT
如果当前时间是下午 4 点,我将闹钟设置为下午 2 点,那么它会同时调用BroadCastReceiver
,我不想要这个东西。”
.
对于 AlarmManager 我使用这个片段:
AlarmManager am = (AlarmManager) getSystemService(SetAlarm.ALARM_SERVICE);
Intent intent1 = new Intent(SetAlarm.this, BroadCast.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(SetAlarm.this, 0,intent1,PendingIntent.FLAG_UPDATE_CURRENT);
am.setRepeating(AlarmManager.RTC_WAKEUP,calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);