Сразу скажу, что метод, который вы описываете в своем вопросе, называется опрос . С опросом дело не в том, что оно не очень экономно расходует заряд батареи и ресурсы, и вы обычно стараетесь держаться подальше от него (в мобильной сфере).
Теперь, учитывая описание вашей проблемы, вы хотите рассмотреть решение push . Так работает клиент Gmail для Android. Собственное push-решение Android называется C2DM , и оно свободно доступно для версий 2.1 +.
Теперь, как это будет работать?
Общая идея заключается в следующем: используя Gmail в качестве примера, скажем, сервер (т.е. ваш бэкэнд) получает новое электронное письмо для пользователя X
. Затем ваш сервер отправит целевое сообщение вашему приложению, установленному на устройстве X
, после чего ваше приложение свяжется с вашим сервером и получит сообщение.
Теперь позвольте мне кратко описать опрос:
App: Hey, got anything for me?
Server: Nope
App: sleep for a bit
App: Hey, got anything for me?
Server: Nope
App: sleep for a bit
App: Hey, got anything for me?
Server: Yep, here it is!
...
В последнем примере ваше приложение потребило все эти дополнительные ресурсы, фактически ничего не выполнив, тогда как в сценарии push это был один вызов сервера для получения сообщения. Вы можете легко увидеть, как плохо опрос может продлить срок службы батареи.