Как быть или как это работает у твиттера, etc?

Пишу приложение под Android.

В общем-то оно уже написано, есть некий таймер, функция по которому раз в какое-то время лазит на сервер и проверяет там личные сообщения и выводит notification, если есть новые сообщения. Все прекрасно работает, до тех пор, пока не переключишься в другое приложение и встроенный task killer не грохнет приложение, когда телефон засыпает. Бывает и так, что приложение не убивается, а ни с того, ни с сего пробуждается и продолжает работать, то есть тут уже все зависит от системы и ее использования в данный момент.


Решил как-то от такого уходить и переходить на сервисы или что-то подобное. Вот твиттер же работает как-то в фоне постоянно. Нашел такую инструкцию: findevelop.blogspot.com/2012/05/broadcastreceiver-...

В принципе, все понятно. Не понятно, только как создать notification, если телефон заснул и у меня нет ни одной Activity, куда передать уведомление о том, что надо его создать.


Подскажите, кто как решал эту проблему?
  • Вопрос задан
  • 2727 просмотров
Решения вопроса 1
kwikpik
@kwikpik
Developer
Мне кажется функционал по опросу сервера лучше вынести в сервисы. А чтоб android не убил сервис, если захочет, то в серыисе вызвать setForeground
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
Почитайте гайды о том, как системно реализовываются push технологии, в частности под андроидом — у apple и windows они реализованы по другому.
Если у меня подключённый к интернету wp7 телефон просыпается и квакает как на аську, так и на почту с вконтактом, так и андроид, лежащий рядом.
Ответ написан
@Toseter
Помоему, для ваших целей подойдет AlarmManager.

Note: The Alarm Manager is intended for cases where you want to have your application code run at a specific time, even if your application is not currently running. For normal timing operations (ticks, timeouts, etc) it is easier and much more efficient to use Handler.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы