1 台设备上的多个推送通知 - iPhone

Posted

技术标签:

【中文标题】1 台设备上的多个推送通知 - iPhone【英文标题】:Multiple push notifications on 1 device - iPhone 【发布时间】:2012-02-14 15:21:51 【问题描述】:

如何在一台设备上处理多个推送通知例如:

一位用户收到一条通知,说您有 1 条来自我的应用的新消息。在他检查该消息之前,另一条消息进来了,所以现在他有 2 条消息。好吧,我不希望 2 条消息堆叠在通知栏中,我想要 1 条通知说有 2 条消息在等待。我该如何实施?

如果在设备上收到 5 个新通知并且用户点击了最后一个通知,那么我们如何获得上一个通知 userInfo

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo

【问题讨论】:

【参考方案1】:

关于您的第一个问题,您将无法执行此操作。通知是单独的事件,NotificationCenter 不会(也不能)合并它们。

推送通知并不意味着传递(很多)信息,因此,您不能依赖读取 userInfo 对象。例如,如果用户只是关闭通知警报并删除它而不阅读它,你会怎么做?

您应该做的只是使用推送通知来告诉您的应用“发生了什么事”。然后应用程序应该从服务器获取信息。即,如果用户点击最后一条通知,该应用仍将下载链接到所有五个通知的所有信息。

【讨论】:

问题已经在2012年得到解答,是否仍然没有办法通过针对ios 6或iOS 7或iOS 8来完成被质疑的工作?

以上是关于1 台设备上的多个推送通知 - iPhone的主要内容,如果未能解决你的问题,请参考以下文章

推送通知未在 iPhone 应用程序中的多个设备上传递?

iP6s 上的 iOS 推送通知

iphone推送通知服务问题

如果另一台设备已响应警报,则删除推送通知警报

如何使用 GCM 和 java 向多个设备发送推送通知

推送通知未在多台设备上接收 - 仅在一台设备上获取推送