0

У меня есть URL Json, который содержит данные о последних проводках вакансий, я успешно разбираю Json URL и могу отображать верхние вакансии в моем ListView.Android PushNotification From Json URL

Но мое требование - создать push-уведомление, так что всякий раз, когда новое задание отправляется, пользователь должен иметь возможность получать уведомление на устройстве.

Я следовал за этим: http://www.vogella.com/articles/AndroidNotifications/article.html

Но я не знаю, как получать уведомления в моем случае.

Может ли кто-нибудь мне помочь?

+0

Вы хотите дать push-уведомление, даже если ваше приложение не отображается на экране (в коротком переднем плане)? –

+0

да точно, уведомление от JSON URL – String

ответ

4

Выпуск:

Дает толчок уведомление устройства пользователя о обновленных данных, даже если приложение работает в фоновом режиме.

Решение:

После успешных вставки новых данных в базе данных (которая собирается дать обновленный набор данных на запрос JSON), просто вызовите файл, который отправить GCM толчок уведомление всем ваших пользователей.

Ссылка:

  1. GCM docs

  2. GCM push-notification using php server

В контексте реализации представленного в демонстрационном приложении 2-й линии,

вверх при успешной вставке вы можете позвонить в файл send_message.php, но убедитесь, что $regId и $message должны быть получены из вашей базы данных

+0

Образец кода, пожалуйста? – String

+0

@String: я обновил свой ответ –

2

Вы создали уведомления ActionBar для своего приложения, но теперь вам нужно создать возможность получать уведомления от веб-клиента, вместо того, чтобы искать их самостоятельно из URL-адреса.

Чтобы создать push-уведомление, вам понадобится постоянный поток (BroadcastReceiver) на устройстве, ожидающее уведомления от сервера.

Google «Обмен облаками на устройства» - это самый простой способ сделать это.

Это хорошая связь с большим количеством информации о том, как это сделать:

http://blog.mediarain.com/2011/03/simple-google-android-c2dm-tutorial-push-notifications-for-android/

1

Если вам требуется эти уведомления, которые будут отображаться на устройстве, даже если приложение не работает (кажется, в зависимости от того, что вы описали), вы можете использовать Google Cloud Messaging.

Вам понадобится сервер, который будет опроса URL Json для обновлений, и отправьте сообщение GCM на все устройства, где ваше приложение будет установлено после обнаружения такого обновления.

Ваше приложение должно зарегистрироваться в Google Cloud Messaging и отправить регистрационный идентификатор, полученный от Google на ваш сервер.

Когда ваше приложение получит сообщение GCM, вы должны создать уведомление и когда уведомление будет прослушиваться, вы должны запустить операцию, которая загружает данные из URL-адреса JSON.

+0

Вам нужен сервер, который будет опросить URL Json для обновлений? Не могли бы вы привести пример кода? – String

+0

У меня нет образца кода для этого. В принципе, вы должны запустить тот же код, который у вас есть в своем приложении (для разбора URL-адреса JSON) на сервере, и проверить, что что-то изменилось по сравнению с прошлым анализом JSON. Вы должны делать это в цикле, каждые X секунд/минут (независимо от частоты, которую вы хотите уведомить пользователей приложения об изменениях в JSON). Когда вы обнаруживаете изменение, вы отправляете сообщения GCM на все устройства, которые установили приложение. Читайте о GCM в ссылке, которую я предоставил (или в любом количестве руководств, которые вы можете легко найти в Интернете), чтобы узнать, как это сделать. – Eran

+0

(для разбора URL JSON) на сервере? это означает, что я должен сделать сообщение или получить запрос на сервер, чтобы получить сообщение? Я следую этому руководству url http://www.androidhive.info/2012/10/android-push-notifications-using-google-cloud-messaging-gcm-php-and-mysql/ – String