【问题标题】:IOS bulk push notificationIOS批量推送通知
【发布时间】:2014-08-08 12:44:32
【问题描述】:

我创建了一个为 IOS 手机发送推送通知的应用程序,该应用程序一次成功地将推送发送给 1 个用户。 一次向大约 100k 用户发送推送时会出现问题(当然手机上会出现很大的延迟,因为我正在循环设备令牌以便一一发送推送)。

因此,由于这种延迟,我不想循环我的 DataTable。我需要立即将所有通知发送到所有设备令牌,以便设备同时收到推送通知,不会有任何延迟。

有什么办法吗? 注意:我正在使用 C#。如果其他语言可以实现并解决这个问题,请指教。

【问题讨论】:

    标签: c# ios push-notification apple-push-notifications


    【解决方案1】:

    您无法控制设备何时收到推送通知。即使您设法立即将 100k 推送通知提交到 APNS 服务器,它们实际传递到设备的速度也取决于 APNS 服务器。

    如果您询问如何立即向 APNS 服务器提交 100k 推送通知,您可以通过打开多个到 APNS 服务器的套接字并在多个线程中发送通知来提高您的速度。即使你一个一个地发送通知,假设你使用的是同一个连接,而不是一直关闭和打开套接字,它们默认是在 TCP 级别批量发送的,所以它们是批量到达 APNS 服务器的。

    【讨论】:

    • 所以根据您的回复,不可能在同一个请求中发送多个令牌设备。对吧?
    • @AndroidNabz 如果通过相同的请求,您的意思是包含多个设备令牌和一个有效负载的字节数组,那么不,没有办法。对于每个设备令牌,您必须包含有效负载(以及其他字段,例如过期和消息 ID)。
    • 太奇怪了,我不能在同一个有效负载中放置设备令牌数组;与安卓相反。无论如何,谢谢你的时间:)
    【解决方案2】:

    您可以查看PushSharp 库。它将为您管理多个套接字的打开和关闭。它还实现了反馈,因此您将知道是否有任何推送失败。

    【讨论】:

    • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
    • 嗨。这可以在单个请求中将单个推送消息发送到多个设备。我进行了研发并实现了代码,并在 5-10 台设备上进行了测试。
    猜你喜欢
    • 2013-04-27
    • 1970-01-01
    • 2014-12-17
    • 2017-04-19
    • 2011-08-07
    • 1970-01-01
    • 2016-05-18
    相关资源
    最近更新 更多