Идентификация alarmManager

278
07 мая 2017, 23:50

Как я могу идентифицировать alarmManager, Нужно узнать если alarmManager уже создан тогда не создавать больше

    PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, inetIntent, PendingIntent.FLAG_CANCEL_CURRENT);
    am.setRepeating(AlarmManager.RTC, SystemClock.elapsedRealtime(), 2 * AlarmManager.INTERVAL_HOUR, pendingIntent);

В таком варианте, он как бы отменяет текущее и создает новое которое срабатывает сразу же

Answer 1

Вот тут отлаженная лично и используемая в продакшене версия установки, отмены и проверки наличия AlarmManager-a. Проверять наличие зарегистрированного AlarmManager можно так:

//кажется, важно использовать при создании и проверки один и тот же контекст
//ReceiverTimer.class - это тот ресивер, который реагирует на созданный ранее и нуждающийся в проверке `AlarmManager`
Intent intent2check = new Intent(mContext.getApplicationContext(), ReceiverTimer.class);
//устанавливаем и action, если надо
intent2check.setAction(mContext.getString(R.string.receiver_action_timer));
//проверяем наличие не создавая с помощью флага PendingIntent.FLAG_NO_CREATE
//если AlarmManager установлен, то будет !null
boolean alarmUp = (PendingIntent.getBroadcast(mContext.getApplicationContext(), ID, intent2check,
        PendingIntent.FLAG_NO_CREATE) != null);
READ ALSO
Android MVP взаимодействие presenter и adapter

Android MVP взаимодействие presenter и adapter

Подскажите пожалуйста, более правильный вариант:

305
Ошибка в Scanner Java после второго-третьего ввода

Ошибка в Scanner Java после второго-третьего ввода

День добрыйПишу большую программу на Java

198
Android MVP взаимодействие view и presenter

Android MVP взаимодействие view и presenter

Прочитав статьи и просмотрев прилагающейся к ним код, так и не понял как правильно организовать взаимодействие view и presenterОсновная идея в том...

248
Помогите разобраться с javassist!

Помогите разобраться с javassist!

Делаю задание по созданию java-приложенияСтоит задача изменения метода (формулы расчета) без перекомпиляции приложения

165