0

Я хотел бы уведомить пользователя (создавать уведомление) всякий раз, когда он получает запрос в приложении.
Я использую базу данных MySQL с PHP - обычный материал.Уведомление Android: GCM или служба

Всякий раз, когда значение user_id_req поля изменяется от 0 до , приложение должно создать уведомление. Я смог сделать это в App Start с NotificationManager и проверить DB, но я хотел бы сделать это в режиме реального времени, то есть как только значение изменится.

Должен ли я использовать GCM для обработки этих запросов или Службы, которая работает в фоновом режиме и проверяет базу данных каждую минуту?

+0

GCM vs Service? Вы сравниваете Яблоки с велосипедами. –

+0

Это совсем не помогает. Я думал, что вы можете использовать Службу для выполнения фоновых процессов, например. проверьте значение поля базы данных - можете ли вы это сделать? –

+0

На мой взгляд, сервис выглядит слишком негативным для работы, о которой вы говорите. Вы должны уведомить пользователя, КОГДА-то случилось. Я получу это как знак того, что толчок - правильный путь. – marino

ответ

0

Вы, , должны использовать GCM для этого, а не для модели опроса.

Очень жаль, когда вы делаете сетевой запрос каждую минуту - это приведет к значительному использованию батареи. Кроме того, если у вас нет Сервиса, который будет держать блокировку от бодрствования (то есть действительно убьет батарею), устройство будет спать в конце концов, и ваши запросы прекратятся, пока пользователь снова не пробудит устройство. Другая проблема заключается в том, что, если вы не зарегистрируете свое приложение для пробуждения и запускаете службу при загрузке, ваш опрос остановится всякий раз, когда пользователь перезагрузит свое устройство.

Как раз так бывает, что большинство учебных пособий по GCM также создадут Service. Не позволяйте этому путать вас. Если вы только показываете уведомление пользователю, вам не нужен Service, и просто простой BroadcastReceiver будет работать нормально.

Смежные вопросы