0

Мы используем услуги Pushwoosh для отправки push-уведомлений в наши приложения, и мы следовали учебному курсу для Windows 8 (javascript). Мы могли получать push-уведомления в нашем приложении при работе на настольном компьютере. Это универсальное приложение для Windows 8.1, поэтому мы запускаем тот же код для нашей версии Windows Phone 8.1, которая также находится в javascript.Не получать push-уведомления в Windows Universal App (Windows 8.1), через Pushwoosh

В устройстве Windows Phone сообщение push не принимается и часто блокируется в "service.subscribeToPushService();" метод. Удаление приложения и запуск его в первый раз, похоже, сработают, но после этого он просто блокирует этот метод.

Будучи универсальным приложением, существует ли разница между телефоном и настольной версией с точки зрения push-уведомлений, о которых мы должны знать?

ответ

0

Вы уверены, что используете новейший SDK Pushwoosh для Windows 8? Если вы используете универсальное приложение для Windows/Windows Phone 8.1, вам необходимо использовать Pushwoosh Windows 8 (WNS) Pushwoosh SDK для обеих платформ. Он расположен здесь:
https://github.com/Pushwoosh/pushwoosh-windows-8-sdk

Код должен быть точно такой же для всех платформ: https://github.com/Pushwoosh/pushwoosh-sdk-samples/blob/master/Native/Win8/Win8JS/js/default.js

var service = new PushSDK.NotificationService.getCurrent("YOUR_PUSHWOOSH_APP_ID"); 

service.ononpushaccepted = function (args) { 
    //code to handle push notification 
    //display push notification payload for test only 
    var md = new Windows.UI.Popups.MessageDialog(args.toString()); 
    md.showAsync() 
} 

service.ononpushtokenreceived = function (pushToken) { 
    //code to handle push token 
} 

service.ononpushtokenfailed = function (error) { 
    //code to handle push subscription failure 
} 

service.subscribeToPushService(); 

Также не забудьте обработать запуск толчок уведомления:

app.onactivated = function (args) { 
    if (args.detail.kind === activation.ActivationKind.launch) { 
     showProgress(); 
     if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) 
     { 
      // TODO: This application has been newly launched. Initialize 
      // your application here. 

      //Handle start push 
      PushSDK.NotificationService.handleStartPush(args.detail.arguments); 

Также та же информация здесь:
https://community.pushwoosh.com/questions/1801/push-notification-to-windows-81-universal-apps?page=1&focusedAnswerId=1871#1871

0

Вы можете прочитать эту тему here о push-уведомлении, есть раздел, говорящий о защите DOS Attacks. Может быть, что-то с частотой повторного подключения.

Совет: Воздержитесь от открытия и закрытия соединений с APN для каждого push-уведомления, которое вы хотите отправить. Быстрое открытие и закрытие соединений с APN будет считаться атакой типа «отказ в обслуживании» (DOS) и может помешать вашему провайдеру отправлять push-уведомления вашим приложениям.

+0

У нас есть push-уведомления, работающие на iOS, Android и WIndows 8 (планшет/настольный компьютер), единственной платформой, которая не работает, является Windows Phone (8.1). – Marco