我有一个AlarmManager
,它应该在2013年12月26日发布。这是我的代码:
FestCountdownTimer countdownNotificationTimer = new FestCountdownTimer(
00, 00, 9, 26, 11, 2013);
long timeToEvent = countdownNotificationTimer.getIntervalMillis();
System.out
.println("TIME TO EVENT!!! ------------------ " + timeToEvent);
Intent eventAlarm = new Intent(this, AlarmReceiver.class);
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, timeToEvent, PendingIntent
.getBroadcast(this, 1, eventAlarm,
PendingIntent.FLAG_UPDATE_CURRENT));
但是,我的警报在1或2分钟后开火。我不知道什么是错的。 (顺便说一句,FestCountdownTimer
是我为了获得现在和未来设定日期之间的间隔所做的一个类。long timeToEvent;
正在适当地进行。)
感谢您的帮助...
答案 0 :(得分:0)
我不知道你的FestCountdownTimer课,但该死的 probablay时间设置不正确(我的意思是可能会错误地将时间转换为 毫秒)
注意:以下代码是harcode,未在实际应用中进行测试
Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(System.currentTimeMillis());
cal.clear();
cal.set(year,month,day,hour,min); //set your date here
AlarmManager alarmMgr = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0);
// cal.add(Calendar.SECOND, 5);
alarmMgr.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), pendingIntent);