SolidlSnake
@SolidlSnake
Ваш дружелюбный сосед

Откуда лишние вызовы Alert'а?

Выставляю повторение сервиса таким образом:
AlarmManager alarmManager = (AlarmManager) getActivity()
                .getSystemService(Context.ALARM_SERVICE);

        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.HOUR_OF_DAY, 15);
        calendar.set(Calendar.MINUTE, 0);
        calendar.set(Calendar.SECOND, 0);

        Intent intent = new Intent(getActivity(), NotificationService.class);

        if(notificationService == null)
            notificationService = PendingIntent.getService(
                    getActivity(), 1,
                    intent, PendingIntent.FLAG_UPDATE_CURRENT
            );

        alarmManager.cancel(notificationService);
        alarmManager.setRepeating(
                AlarmManager.RTC_WAKEUP,
                calendar.getTime().getTime(),
                AlarmManager.INTERVAL_DAY,
                notificationService
        );

Но при полном закрытии приложения происходит лишний вызов сервиса, иногда даже не один.
Можно ли как-то обойти лишние вызовы, чтобы они происходили только в назначенное время (15:00)?
  • Вопрос задан
  • 134 просмотра
Пригласить эксперта
Ответы на вопрос 1
konstantin_berkow
@konstantin_berkow
Начинающий разработчик
Возможно дело в RTC_WAKEUP, попробуйте сделать интервал меньше. Ещё как вариант избавьтесь от репита и шедульте следующий аларм из сервиса.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы