每天设置闹钟

时间:2013-08-12 08:20:51

标签: java android alarmmanager alarm android-alarms

我正在开发一个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()。但现在的问题是,即使代码中没有循环,警报也会在取消它时不断触发。

没有得到我错的地方。 请帮助。谢谢!

1 个答案:

答案 0 :(得分:-1)

每次手机启动时,您是否拥有BroadcastReceiver BOOT_COMPLETED权限才能重新启动闹钟?否则你会松动警报。

请在此处查看http://learnandroideasily.blogspot.nl/2013/07/bootcompleted-broadcastreceiver-in.html