iPhone:推动批量设备的通知可靠性

时间:2011-10-19 09:19:36

标签: iphone apple-push-notifications apns-sharp

我一直在使用https://github.com/Redth/APNS-Sharp向我的iPhone App安装的所有设备发送推送通知消息。它的工作方式非常不一致!

这个问题是如何开始的?

我们拥有一个拥有约500名用户的iPhone应用程序。我们注意到大多数用户没有收到通知消息!进一步调试实时,我注意到以下一系列事件。

.....
10:37:33 AM - Notification Queued!
10:37:33 AM - Notification Queued!
10:37:33 AM - Notification Queued!
10:37:33 AM - Notification Queued!
10:37:36 - Connecting...
10:37:36 - Connected...
10:37:36 - Notification Success
10:37:36 - Notification Success
10:37:36 - Notification Success
...
10:37:36 - Error: Unable to write data to the transport connection: An existing connection was forcibly closed by the remote host.
10:37:39 - Connecting...
10:37:40 - Connected...
10:37:40 - Notification Success
10:37:40 - Notification Success
....

我做了什么?

我已经使用Ad-Hoc生产证书创建了测试iPhone应用程序,并将其安装在5台设备上。我尝试同时向所有这些设备发送多条消息。我注意到在接收消息时完全不一致的行为。有时,所有5台设备都会立即收到消在5个中,3个设备几乎立即接收消息,而在其他两个设备中,有时它们中的任何一个立即接收消息,而其他设备除了最后一条消息之外不接收所有消息。有时它根本不接收消息!

我也尝试过一次向个人设备发送消息,并注意到一旦它开始接收消息,所有消息立即出现,有时只是在长时间(大约20分钟)后收到最后一条消息。

我已经验证了什么?

  • 它使用相同的连接发送所有消息,因此它不会打开多个连接。
  • 使用正确的证书和推送通知服务器。
  • Ran反馈服务几次,但没有返回任何设备ID。

有没有人注意到这种行为?向多个设备发送消息时可能会出现什么问题?还有什么我可以做的推动通知可靠吗?

感谢。

2 个答案:

答案 0 :(得分:0)

试试UrbanAirship。我发现它非常一致,因为它的云方法(部署了几个应用程序)。很多主要的玩家也在使用它(很棒等)。总是更好地将这些事情的头痛委托给专家:)。 +它是免费的。

答案 1 :(得分:0)

我已将此错误记录到Apple,并得到了他们的回复。看起来他们在iOS 5.0中修复了与推送通知相关的客户端问题。此外,由于无法保证推送通知,因此这种不一致的行为已经发生。如果有人有兴趣,那么Bug ID#10333505