我正在开发一个Android应用程序,我试图每天设置一个警报。为此,我使用日历作为
alarmCalendar.set(Calendar.DATE,taskdate);
alarmCalendar.set(Calendar.MONTH, 7);
alarmCalendar.set(Calendar.YEAR, 2013);
alarmCalendar.set(Calendar.HOUR, 11);
alarmCalendar.set(Calendar.MINUTE, 30);
alarmCalendar.set(Calendar.SECOND, 0);
我正在使用以下代码设置闹钟。
alarmtime = alarmCalendar.getTimeInMillis();
am.setRepeating(AlarmManager.RTC_WAKEUP, alarmTime, AlarmManager.INTERVAL_DAY, pi);
上述代码的问题是,警报有时会触发,有时则不触发。
所以我正在尝试一种方式。那是, 一旦警报触发,取消该警报,我试图使用
将其设置为第二天 am.set(AlarmManager.RTC_WAKEUP, currenttime, pendingIntent);
而不是am.setRepeating()。但现在的问题是,即使代码中没有循环,警报也会在取消它时不断触发。
没有得到我错的地方。 请帮助。谢谢!
答案 0 :(得分:-1)
每次手机启动时,您是否拥有BroadcastReceiver
BOOT_COMPLETED
权限才能重新启动闹钟?否则你会松动警报。
请在此处查看http://learnandroideasily.blogspot.nl/2013/07/bootcompleted-broadcastreceiver-in.html