Я не получаю ответов при отправке сообщений с помощью PushSharp

Я отправляю push-уведомления с помощью PushSharp.

Я вызываю метод StopAllServices объекта PushService, чтобы он мог отправлять сообщения.

Я предполагаю, что после завершения PushService.StopAllServices я получил ответы для всех объектов уведомлений.

После этого я убиваю поток, в котором создается экземпляр объекта PushService.

PushService = New PushService()
...
...
...

PushService.StopAllServices(True)
...
'the thread dies here

Я заметил, что иногда я не получаю ответов в функциях обратного вызова.

Может быть, метод StopAllServices не ждет всех ответов (от APNS/GCM)?

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


person gilp    schedule 06.02.2013    source источник


Ответы (1)


От службы push-уведомлений Apple (APNS) вы не получите ответ на все успешно доставленные уведомления, и это «по задумке». Redth (автор pushSharp) опубликовал подробное объяснение этого: http://redth.info/the-problem-with-apples-push-notification-ser/
Так что в любом случае вы вряд ли получите хотя бы один ответ на отправленное уведомление. , нецелесообразно ждать всех ответов, чтобы остановить службу.

И имейте в виду, что доставка уведомления провайдеру (android/apple/microsoft) в любом случае не гарантирует вам эффективную доставку уведомления устройством...

person baramuse    schedule 12.02.2013
comment
спасибо за ответ. Моя проблема в том, что я не запускаю эти методы (иногда): OnNotificationSendFailure , OnNotificationSent. Я так понимаю, что такое поведение (получение ответов) достигается логикой PushSharp, а не APNS. Я хочу построить на PushSharp. Это ошибка в PushSharp или проблема в том, как я его использую? - person gilp; 17.02.2013