Установите время в диспетчере аварийных сигналов Android - Alarm english мгновенно [дубликат
-
25-09-2019 - |
Вопрос
Возможный дубликат:
Почему мой Android Alarm Manager стреляет мгновенно?
У меня есть этот код, который назовет уведомление о тревоге
public static Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(System.currentTimeMillis());
cal.add(Calendar.HOUR_OF_DAY,hour);
cal.add(Calendar.MINUTE, min);
Intent intent = new Intent(this, OnetimeAlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, REQUEST_CODE, intent,0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis() , pendingIntent);
Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show();
Но тревога уволена мгновенно, оно дождается ожидание после данного часа и минут? Должен ли я добавить что-нибудь в файл манифеста?
Решение
Вы используете текущее время для установки тревоги. Так что он с огнями мгновенно.
Проверьте API. http://developer.android.com/reference/android/app/alarmmanager.html#set%28int ,%20Long ,%20Android.app.PendingIntent%29.
Там вы проходите время, когда сигнал тревоги идет как второй параметр. В вашем случае это фактическое время. Таким образом, вы должны добавить количество времени, которое вы хотите дождаться времени, когда ваше прохождение в методе прямо сейчас.