報警經理的推薦信說如果規定的觸發時間是過去的,警報將立即觸發。在我的申請中,我正面臨著這個問題。這是我的報警經理代碼: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 回答
- 0 關注
- 372 瀏覽
添加回答
舉報
0/150
提交
取消