Android 警报在设定时间后持续触发
你能看看这个吗Android 警报在设定时间后持续触发,android,Android,你能看看这个吗 if(current.getTimeInMillis() < cal.getTimeInMillis()){ //current.add(Calendar.MINUTE, 15); alarms.setRepeating(AlarmManager.RTC_WAKEUP, current.getTimeInMillis(), AlarmManager.INTERVAL_FIFTEEN_MINUTES, alarmIntent); Toast
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();
}
if(current.getTimeInMillis()
current.getTimeInMillis()是系统时间,cal.getTimeInMillis()是我希望事件发生的设置时间。我尝试每15分钟发出一次警报,只要系统时间不超过指定的设定时间,并且当达到设定时间时,警报应熄灭。但我的问题是,即使在过去的设定时间之后,它仍然每隔15分钟重复一次,并且它完全忽略了else块中的代码。我的逻辑是否做得不正确?。。任何想法都将不胜感激。谢谢。关于
alarms.SETREPEATING(AlarmManager.RTC_WAKEUP,current.getTimeInMillis(),AlarmManager.INTERVAL_十五分钟,alarmIntent)的不清楚之处代码>我的意思是,即使在指定的设置时间(cal.getTimeInMillis())结束后,警报仍会持续触发。这是不应该发生的。setREPEATING意味着它将继续一次又一次地发出警报。。。你已经安排好每15分钟一次,一遍又一遍,直到你取消它。哦,好的,谢谢。我以为它会爆炸,因为它在布尔逻辑中。再次感谢