1
我正在使用以下代碼在特定日期和時間發出警報。AlarmManager未在指定時間觸發警報
mCalendar.setTimeInMillis(System.currentTimeMillis());
mCalendar.set(Calendar.YEAR, 2013);
mCalendar.set(Calendar.MONTH, 0);
mCalendar.set(Calendar.DAY_OF_MONTH, 16);
mCalendar.set(Calendar.HOUR_OF_DAY, 1);
mCalendar.set(Calendar.MINUTE, 30);
mCalendar.set(Calendar.SECOND, 0);
mCalendar.set(Calendar.MILLISECOND, 0);
new ReminderManager(this).setReminder(info.id, mCalendar);
和ReminderManager.setReminder
功能是:
public void setReminder(Long taskId, Calendar when)
{
Intent i = new Intent(mContext, OnAlarmReceiver.class);
i.putExtra(DataBaseHelper.KEY_ROWID, (long)taskId);
PendingIntent pi = PendingIntent.getBroadcast (mContext,0,i,PendingIntent.FLAG_ONE_SHOT);
mAlarmManager.set(AlarmManager.RTC_WAKEUP, when.getTimeInMillis(), pi);
}
其工作不正常,報警,當我按我的應用程序不是我指定的時間內「將提示」菜單項熄滅。
根據我的時區日期是未來,但我的模擬器和系統顯示由於日光節約1小時的差異。 – user1554693
感謝您的幫助,在模擬器上設置正確的時間已經解決了我的問題。 – user1554693