Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
dubok79
324 / 122 / 10
Регистрация: 01.11.2012
Сообщений: 586
1

Не удаляется Alarm

24.09.2014, 13:37. Просмотров 467. Ответов 2
Метки нет (Все метки)

Запускаю Alarm так

Java
1
2
3
4
5
        intent = new Intent(context, MyAlarmReceiver.class);
        intent.setAction(action);   
        intent.putExtra("WID", wid);
        pi = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, getTime().getTimeInMillis(), getPeriod(), pi);
Удаляю так
Java
1
2
3
4
5
6
        Intent lintent = new Intent(context, MyAlarmReceiver.class);
        PendingIntent lpi = PendingIntent.getBroadcast(context, 0, lintent, PendingIntent.FLAG_UPDATE_CURRENT);
        try {
            alarmMgr.cancel(lpi);
        } catch (Exception e) {
        }
По расписанию аларма выскакивает уведомление. Пытаюсь удалить его,но все равно выскакивает уведомление. В чем косяк?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.09.2014, 13:37
Ответы с готовыми решениями:

Отменить Alarm
Я сел делать будильник, и встретился c AlarmManager. Все вроде прекрасно, и сделал Receiver, и...

Alarm Manager
Здравствуйте . Подскажите , правильно ли я понимаю что "Alarm Manager "не рекомендуют использовать...

Периодический alarm не срабатывает
Нужно установить alarm с некой периодичностью. Когда устанавливаю на 15 сек, то все работает...

Ошибки в коде. Alarm Manager
Идея: в определенное время выводит нотификейшен с определенным текстом. Не могу понять почему не...

Уведомления в заданное время без Alarm
Пытаюсь вывести уведомление в заданное время не используя AlarmManager. Т.к. через AlarmManager,...

2
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
24.09.2014, 14:35 2
Все дело в интенте, он должен быть один и тот же. alarmMgr - это просто менеджер, не сам аларм, а сам аларм создается непосредственно после вызова какого нибудь метода (н.р. am.setRepeating()) и идентификатором его выступает что-то из интента (в PendingIntent есть параметр ид, по-моему это он). У вас выходит, что вы создаете один сигнал, а отменяете другой).
1
dubok79
324 / 122 / 10
Регистрация: 01.11.2012
Сообщений: 586
25.09.2014, 09:09  [ТС] 3
Но везде в примерах именно через PendingIntent с теми же параметрами, что и запуск аларма идет и его cancel. Как сохранить интент? Или как раз использовать его ид. Ну попробую покопать в этом направлении. Спасибо.

Добавлено через 2 часа 48 минут
Короче решил задачу так: вместо метода setRepeating() использовал метод set() AlarmManager-а. Ну оно и понятно, что стало работать как положено. Где то прочитал, что рекомендуют использовать как раз set() для таких случаев как у меня. Кстати на счет PendingIntent, там все правильно у меня было сделано. Все равно спасибо за отклик.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.09.2014, 09:09

Alarmmanager, информация о следующем установленном alarm
Здравствуйте. вопрос такой. Можно ли как нибудь получить информацию от следующем установленном...

Alarm broadcastIntent убивается через какое-то время
Привет! Я разрабатываю приложение похожее на будильник. Я использую Android 4.2.2. Проблема...

Alarm не срабатывает через заданный промежуток времени
Всех приветствую. Мне нужно написать будильник. Для решения этой задачи я решил использовать класс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru