0

是否可以一次/即时向注册的iOS用户发送多个(10 - 15)通知? iOS推送通知有哪些限制?向iOS用户发送多个推送通知

+0

使用APNS打开安全套接字并创建一个包含10-15设备通知的数据包并发送。没问题。 – 2014-09-22 12:19:05

回答

0

如果您在很短的时间内发送多个通知到同一个设备或计算机,推送服务将发送只有最后一个。

这是为什么。设备或计算机确认收到每个通知。在推送服务收到该确认之前,它只能假设设备或计算机出于某种原因离线,并将通知存储在服务质量(QoS)队列中供将来重新传送。这里的往返网络延迟当然是主要因素。

如本地和推送通知编程指南中所述,QoS队列为每个设备或每台计算机的每个应用程序保存单个通知。如果服务在发送队列中的一个之前收到另一个通知,则新通知将覆盖前一个通知。

所有这一切都指出,意图是,通知指示到自己感兴趣的东西的供应商已经改变了应用程序,该应用程序应检查与供应商以获得详细信息。通知不应该包含其他地方也没有的数据,也不应该是有状态的。

因为您的设备没有连接到服务,所以没有立即交付的任何推送通知都排队等待未来的重新传递。 “立即”当然需要延迟考虑连接。由于APN会在此时间超时,所以外围案件将超过60秒。

的更多信息请点击here

1

是否有可能发送多个(10 - 15)通知已注册的iOS用户在同一时间/瞬间?

不,你不能在apple docs同时发送10-15通知相同的用户,在这里阅读更多。

如果要发送多个通知到同一个设备或很短的时间内 计算机,推送服务将发送 只有最后一个。

但是,如果你打算发送推送通知给不同的用户在同一时间应该没有问题(我猜你正在寻找什么)。

哪些iOS的限制推送通知?

如果您不能发送simuntanously以相同的用户之外还有对APN的推送通知没有限制,这里提到。取一起来看看Push Notification Throughput and Error Checking

有使用的APN无盖或批量大小限制。 iOS 6.1 新闻稿称,自成立以来,APN已发送超过4万亿次推送 通知。它在WWDC 2012 上宣布,APN每天发送70亿个通知。

如果您看到吞吐量低于每秒9,000个通知,那么您的服务器可能会受益于改进的错误处理逻辑。

以下是使用增强型通知 格式时如何检查错误的方法。继续写,直到写入失败。如果流已准备好再次写入 ,请重新发送通知并继续。如果流 尚未准备好写入,请查看该流是否可供读取。

如果是,请阅读流中可用的所有内容。如果返回零个字节 ,则由于诸如 命令字节无效或其他解析错误等错误而导致连接关闭。如果返回六个字节 ,那么这是一个错误响应,您可以检查响应 代码以及导致错误的通知的ID。您需要 再次发送每个通知。

一旦发送了所有内容,最后一次检查错误 响应。

仅仅因为正常的延迟,丢弃的连接可能需要一段时间才会从 APN返回到服务器。在写入失败之前,由于 连接被丢弃,因此可能发送了超过500条通知,因此可能会发送 连接。大约1,700次通知写入可能会由于管道已满而失败 ,因此只要 数据流准备好再次写入就重试。

希望这会有所帮助。