2013-12-21 2 views
0

У меня есть AlarmManager, который должен выстрелить на 26 декабря 2013 г. Вот мой код:Android AlarmManager не стреляя в установленное время

FestCountdownTimer countdownNotificationTimer = new FestCountdownTimer(
      00, 00, 9, 26, 11, 2013); 
    long timeToEvent = countdownNotificationTimer.getIntervalMillis(); 
    System.out 
      .println("TIME TO EVENT!!! ------------------ " + timeToEvent); 

     Intent eventAlarm = new Intent(this, AlarmReceiver.class); 

     AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); 
     alarmManager.set(AlarmManager.RTC_WAKEUP, timeToEvent, PendingIntent 
       .getBroadcast(this, 1, eventAlarm, 
         PendingIntent.FLAG_UPDATE_CURRENT)); 

Но моя тревога стреляя после 1 или 2 минут. Я не знаю, что кажется неправильным. (Byt кстати, FestCountdownTimer класс я сделал, чтобы получить интервал между сейчас и в будущем множества. long timeToEvent; подходит правильно.)

Спасибо за помощь ...

ответ

0

Я не знать о вашем FestCountdownTimer класса, но чертовски уверено, время probablay не установлено должным образом (я имею в виду, может быть ошибочно время новообращенного миллисекунды)

Примечания: Это ниже кода harcode не тестируются в реальных приложениях

Calendar cal = Calendar.getInstance(); 
    cal.setTimeInMillis(System.currentTimeMillis()); 
    cal.clear(); 
    cal.set(year,month,day,hour,min); //set your date here 

    AlarmManager alarmMgr = (AlarmManager)getSystemService(Context.ALARM_SERVICE); 
    Intent intent = new Intent(this, AlarmReceiver.class); 
    PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, 0); 
    // cal.add(Calendar.SECOND, 5); 
    alarmMgr.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), pendingIntent); 
+0

, но я хочу, чтобы разница между двумя датами ... Разве это не так, как работает будильник? – SynerFlow

+0

спасибо, что это работает, теперь, как я могу убедиться, что будильник не погас после того, как дата выполнена? – SynerFlow

+0

http://developer.android.com/reference/android/app/AlarmManager.html#cancel%28android.app.PendingIntent%29 проверить это, убедитесь, что ожидающее намерения - это то же самое, чье начало ... @ADeveloper – QuokMoon

Смежные вопросы