报警经理的推荐信说如果规定的触发时间是过去的,警报将立即触发。在我的申请中,我正面临着这个问题。这是我的报警经理代码:Intent myIntent = new Intent(getActivity(), DinnerAlarmReceiver.class);
pendingDinnerIntent = PendingIntent.getBroadcast(getActivity(), 0, myIntent, 0);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
calendar.set(Calendar.MINUTE, minute);
alarmManager.set(AlarmManager.RTC_WAKEUP,
calendar.getTimeInMillis(), pendingDinnerIntent);这个问题有什么解决办法吗?-编辑我编写了一些代码来估计警报的设定时间是否在当前时间之前。下面是上面的部分,并作了相应的更改:Calendar calendar = Calendar.getInstance();
long currentTime = calendar.getTimeInMillis();
calendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
calendar.set(Calendar.MINUTE, minute);
long setTime = calendar.getTimeInMillis();
Timestamp setTimestamp = new Timestamp(setTime);
Timestamp currentTimestamp = new Timestamp(currentTime);
if (setTimestamp.after(currentTimestamp))
{
alarmManager.set(AlarmManager.RTC_WAKEUP,
calendar.getTimeInMillis(), pendingDinnerIntent);
}
else
{
}我该怎么做alarmManager以防万一setTimestamp是以前currentTimestamp ?
1 回答
- 1 回答
- 0 关注
- 361 浏览
添加回答
举报
0/150
提交
取消