Есть приложение, которое должно посылать уведомления. Написано оно на Qt, но сама проблема, как мне кажется, зарыта в яве или в манифесте. В общем, воспользовавшись
этим скриптом, мне удалось прикрутить уведомления, которые отсылаются из сервиса (класс
QtService).
Очередь и проверку уведомлений я построил таким образом: при первом запуске Activity, в класс (QtService) отправляется список в какое время нужно вывести то или иное уведомление. В методе onCreate() этого класса запускается таймер (Timer), который срабатывает каждую минуту и вызывает метод timerTick() - в этом методе я сравниваю текущее системное время и проверяю какое уведомление из списка должно быть показано. (
Нутром чувствую что сделал все не правильно :D)
Так вот, уведомления приходят исправно и в назначенное время, НО! Только если запущено само приложение, т.е. существует Activity и оно либо активно, либо свернуто и висит в задачах. Как только активити закрывается, уведомления прекращают приходить, хотя сама служба в списке запущенных приложений присутствует (Процессов: 1; служб: 1). ЧЯДНТ?
Почему так? Ведь служба запущена. Что происходит когда закрывается приложение? Уничтожаются таймеры? Или из таймеров нельзя вызывать методы NotificationManager'a?