使用 PushSharp 发送消息时我没有收到响应

Posted

技术标签:

【中文标题】使用 PushSharp 发送消息时我没有收到响应【英文标题】:I dont get responses when sending messages using PushSharp 【发布时间】:2013-02-06 14:37:19 【问题描述】:

我使用 PushSharp 发送推送通知。

我调用 PushService 对象的方法 StopAllServices 让它发送消息。

我假设 PushService.StopAllServices 完成后,我得到了所有通知对象的响应。

然后我杀死了实例化 PushService 对象的线程。

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

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

我注意到有时我在回调函数中没有得到响应。

可能是 StopAllServices 方法不等待所有响应(来自 APNS/GCM)吗?

我需要接收所有通知对象的响应。如何做到这一点? 我会很高兴提出建议

【问题讨论】:

【参考方案1】:

通过 Apple 推送服务 (APNS),您不会收到所有成功发送的通知的响应,这是“设计使然”。 Redth(pushSharp的作者)对此发表了详细的解释:http://redth.info/the-problem-with-apples-push-notification-ser/ 因此,无论如何,您几乎永远不会收到每个通知发送一个响应,等待所有答案停止服务也没有用。

请记住,将通知传递给提供商 (android/apple/microsoft) 并不能保证您在设备上有效地传递通知...

【讨论】:

感谢您的回答。我的问题是我没有触发这些方法(有时): OnNotificationSendFailure , OnNotificationSent。所以我知道这种行为(获得响应)是由 PushSharp 逻辑而不是 APNS 实现的。我想在 PushSharp 上构建。这是 PushSharp 中的错误还是我使用它的方式有问题?

以上是关于使用 PushSharp 发送消息时我没有收到响应的主要内容,如果未能解决你的问题,请参考以下文章

google gcm 没有使用 PushSharp 作为我的服务器发送消息

PushSharp 多行消息

PushSharp - 多个无效令牌不调用响应委托

PushSharp 为新创建的 P12 返回无效令牌

在哪个事件中,我可以使用 PushSharp 获取 GCM 响应以向 Android 设备发送通知?

PushSharp 向 iOS 发送通知成功但未收到