У меня есть приложение, которое должно «опросить» веб-сервис, чтобы увидеть, есть ли у пользователя новые сообщения в ожидании. У меня нет контроля над веб-сервисом, поэтому я не могу переключиться на механизм push, я застреваю, делая запрос каждые X секунд, чтобы посмотреть, что доступно.
Я использую System.Threading.Timer, чтобы сделать запрос время от времени, но сталкиваюсь с несколькими проблемами. Самым большим является то, что он перестает работать, когда телефон переходит в режим ожидания (экран выключен, но все еще может принимать звонки и уведомления по электронной почте / TXT).
Мне бы очень хотелось, чтобы он вел себя как другие фоновые приложения. Что я могу сделать, чтобы он работал, не слишком сильно разряжая батарею?