Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
dubok79
323 / 121 / 11
Регистрация: 01.11.2012
Сообщений: 586
#1

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

24.09.2014, 13:37. Просмотров 396. Ответов 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) {
        }
По расписанию аларма выскакивает уведомление. Пытаюсь удалить его,но все равно выскакивает уведомление. В чем косяк?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.09.2014, 13:37     Не удаляется Alarm
Посмотрите здесь:

не удаляется запись с базы Android
Android Не удаляется приложение с рабочего стола
Android Alarm Manager
Alarm broadcastIntent убивается через какое-то время Android
Android Удаляется библиотека в Android Studio, хотя я уже добавил ее в Gradle
Не удаляется строка списка во ViewPager? Android
Android Не удаляется таблица в SQLite
Android Уведомления в заданное время без Alarm
Снова Alarm Manager: как запустить на API выше 19-го? Android
Ошибки в коде. Alarm Manager Android
Android Отменить Alarm
Alarm manager не запускается чаще чем раз в час Android

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

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

Добавлено через 2 часа 48 минут
Короче решил задачу так: вместо метода setRepeating() использовал метод set() AlarmManager-а. Ну оно и понятно, что стало работать как положено. Где то прочитал, что рекомендуют использовать как раз set() для таких случаев как у меня. Кстати на счет PendingIntent, там все правильно у меня было сделано. Все равно спасибо за отклик.
Yandex
Объявления
25.09.2014, 09:09     Не удаляется Alarm
Ответ Создать тему
Опции темы

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