Как мое приложение получит намерение, транслируемое AlarmManager, если операционная система закрыла мое из-за нехватки памяти - PullRequest
0 голосов
/ 30 декабря 2010

Я пишу приложение для будильника и хотел бы выполнить определенную работу при срабатывании alalrm.Для этого я использую метод AlarmManager.set(), и ожидающее намерение передает намерение.Все идет нормально.Но что, если ОС решит закрыть мое приложение, которое было в фоновом режиме из-за нехватки памяти.Может ли кто-нибудь помочь мне с этим.

Также, если я хочу повторных сигналов тревоги, я могу использовать AlarmManager.setRepeating ().Учитывает ли это регулировку дневного света?

1 Ответ

0 голосов
/ 30 декабря 2010

Будильник запустит ваше приложение, даже если оно в данный момент не запущено.Чтобы это произошло, вам необходимо зарегистрировать приемник вещания либо с тегом <receiver> в файле манифеста, либо с помощью метода registerReceiver.Подробнее читайте в документации .

Что касается вашего второго вопроса, хотя я его не пробовал, с помощью setRepeating вы настраиваете интервал между последующими сигналами.Если, например, у вас первый сигнал тревоги в 13:00 и используется интервал INTERVAL_DAY, сигнал тревоги будет срабатывать каждый день в 13:00.Если переход на летнее время вступит в силу и 13:00 станет 12:00, то будильник будет срабатывать ежедневно в 12:00.Тем не менее, я полагаю, вам нужно попробовать это.

...