2013-08-12 2 views
2

Я разрабатываю приложение для Android, где я пытаюсь установить будильник на ежедневной basis.And для этого я использую календарь, какУстановка сигнализации на ежедневной основе

   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

Попробуйте посмотреть на это: http://stackoverflow.com/a/4431071/1777090 –

ответ

-1

У вас есть BroadcastReceiver с разрешением BOOT_COMPLETED, чтобы воссоздать будильник каждый раз при запуске телефона? В противном случае вы потеряете тревогу.

Проверьте это здесь http://learnandroideasily.blogspot.nl/2013/07/bootcompleted-broadcastreceiver-in.html

+0

Проблема не в Bootup ... Тревога не вызывая правильно иногда. и On cancel, он запускается непрерывно. – sanjana