Intereting Posts
Почему Wrap_Content Fire BindView более одного раза Значение android: colorForeground Не запрашивайте Window.FEATURE_ACTION_BAR и установите для windowActionBar значение false в вашей теме, чтобы вместо этого использовать панель инструментов Потоковая передача с M3U на Android Обнаружить событие «домашняя кнопка нажата» в службе android, отображая пользовательский интерфейс (похожий на facebook chatheads) Как разбить стилизованный текст на страницы в Android? Android – getIntent () из фрагмента Как предотвратить двойное нажатие на ListView? Как передать ArrayList <HashMap <String, String >> из одной активности в другую Как передать значения из RecycleAdapter в MainActivity или другие действия Используйте ItemTouchHelper для Swipe-To-Dismiss с другим представлением, отображаемым за выведенным Подождите, пока потоки будут завершены, прежде чем продолжить Отображение JSONObject в список с помощью Flexjson в Java / Android Загрузите фотографию библиотеки с веб-браузером Android Выполнение выполнено для задачи ': app: dexDebug'. Com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException

Pubnub Push Notification не работает для кросс-платформенного мобильного приложения

Мы разрабатываем приложение для Android, основанное на кордове, которое поддерживает чат. Мы отправляем тестовые сообщения чата с сервера, и мы получили сообщения просто отлично, когда приложение находится на переднем плане.

Мы хотели бы получить уведомление о сообщении чата, когда приложение находится в фоновом режиме. Однако мы не получаем Push Notification о сообщении чата.

Ниже приводятся следующие шаги. Пожалуйста, сообщите нам об ошибке, которую мы делаем.

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

Мы используем cordova PushPlugin для регистрации устройства для push-уведомления. И зарегистрируйте устройство, используя код ниже

pubnub.mobile_gw_provision ({ device_id: 'A655FBA9931AB', op: 'add', gw_type: 'gcm', // or 'apns' channel: 'my_chat', callback: mySuccessCallback, error: myErrorCallback, }); 

Мы получаем Push Notification, если мы программно отправляем использование идентификатора устройства GCM для отправки Push-уведомления с нашего сервера с использованием GCM API.

Мы получаем уведомление от pubnub в методе onNotificationGCM для PushPlugin, когда приложение находится на переднем плане.

Мы также настроили ключ API сервера GCM в консоли администратора и включили оповещение pubnub push.

Я использую ниже код Python для публикации чата:

 _pubnub = Pubnub(publish_key='our-publish-key', subscribe_key='our-sub-key') channel_name = 'here-is-channel-string' data=dict( pn_gcm=dict(data=dict( title_for_mobile='PN', summary_for_mobile=['Hi, test'] ) ), text='what is your dob?', sender=dict(name='Jon Snow', id='yyyyyyyy'), meta=dict(job=dict(id='zzzzzzzz')) ) _pubnub.publish(channel_name, data) 

Получение push-уведомления о входящем сообщении чата, когда приложение находится в фоновом режиме, является ключевой функциональностью моего приложения.

Пожалуйста, дайте мне знать, что я делаю неправильно?

Я также поддержал его в поддержке Pubnub. После нескольких приятных ответов от парней в Pubnub мы смогли это разрешить.

Эта документация была введена в заблуждение, и мы использовали

 "pn_gcm": { "data": { "title_for_mobile": "Test", "summary_for_mobile": [ "Hi" ] } } 

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

 { "message": "This is some text", "pn_gcm": { "data": { "title": "Demo wpush", "message":"This is a pushnotification" } }, "pn_debug": "true" } 

Потому что Кордова PushPlugin ожидает ключ message от GCM .

 // GCMIntentService.java @Override protected void onMessage(Context context, Intent intent) { //.... some code ... if (extras.getString("message") != null && extras.getString("message").length() != 0) { createNotification(context, extras); } //... some code ...