报警在设定时间后保持触发

时间:2010-10-01 22:12:28

标签: android

你可以看看这个

if(current.getTimeInMillis() < cal.getTimeInMillis()){
      //current.add(Calendar.MINUTE, 15);
      alarms.setRepeating(AlarmManager.RTC_WAKEUP, current.getTimeInMillis(), AlarmManager.INTERVAL_FIFTEEN_MINUTES, alarmIntent);
      Toast.makeText(this, "Alarm will go of 15mins from now", Toast.LENGTH_SHORT).show();

     }else {
       alarms.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), alarmIntent);
       Toast.makeText(this, "Alarm set in " + cal.getTimeInMillis() + " seconds",
         Toast.LENGTH_LONG).show();
     }

current.getTimeInMillis()是系统时间,cal.getTimeInMillis()是我希望事件发生的设定时间。我试图每15分钟发出一次警报,只要系统时间不超过指定的设定时间,并且当达到设定的时间时,警报应该熄灭。但我的问题是,即使在过去的设定时间之后它仍然每15分钟重复一次并且它完全忽略了else块中的代码。我正在做错误的逻辑吗?任何想法将不胜感激。谢谢。

0 个答案:

没有答案