我们提到Apple的TN2265(https://developer.apple.com/library/ios/technotes/tn2265/_index.html)在我们的应用程序中实现错误处理,该应用程序向我们的用户发送推送通知。文档建议我们异步处理错误,具体来说:
如果你得到六个字节,那就是一个错误响应,你可以检查响应代码和导致错误的通知的ID。您需要再次发送每个通知。
在一系列通知中,如果一个通知失败,那么所有通知都会保证失败吗?如果没有,那么如何避免将相同通知的重复发送到给定设备?
答案 0 :(得分:2)
是的,在这种情况下,APNS服务器甚至不会处理其后的所有通知。
当APNS检测到无效消息时,它会将错误响应写入套接字并关闭连接。在收到错误响应之前,您可能已经在同一个套接字上向Apple发送了更多消息。所有这些都无法到达Apple。创建新套接字后,您应该重新发送所有套接字。
没有重复的风险。