Тревога AlarmManager сохраняется, если приложение убито системой из-за низкой памяти?
Я уже знаю, что если ваше приложение принудительно закрыто убийцей приложения или через настройки Android, ваши ожидающие тревоги будут потеряны. Но что, если Android сам убил его из-за очень низкой памяти. Будут ли ваши тревоги потеряны в этом случае? Как часто это происходит?
Я вижу два способа восстановления после потери тревоги:
-
Если ваше приложение имеет основное действие, используйте onCreate(), чтобы проверить, работает ли ваш будильник за расписанием (будильник должен хранить время, в течение которого он работал в префиксе), и перенести его по мере необходимости.
-
Найдите обычную повторяющуюся задачу Android, чтобы защелкнуться с получателем, чтобы выполнить ту же проверку, что и выше.
Оба они имеют некоторые очевидные основные минусы. Любые другие идеи?
Ответы
Ответ 1
Я уже знаю, что если ваше приложение принудительно закрыто убийцей приложения или с помощью настроек Android, ваши ожидающие сообщения будут потеряны.
Определенно, убийца задач на Android 2.1 и более ранних версиях имеет такой эффект. Я не знаю, что использование приложения настроек имеет этот эффект, хотя я его не пробовал.
Будут ли потеряны ваши тревоги в этом случае?
Нет.