2016-06-08 68 views
-1

我一直在寻找清理测试应用程序的推送通知,并且我注意到Facebook只为其Messenger应用程序使用一个推送通知。例如,如果我收到来自朋友的2条消息,则该应用程序不会发送两个推送通知,但会用新消息更新单推送通知。有没有什么好的教程如何做到这一点(我似乎无法找到任何)或者有没有人有任何示例代码,我可以看看?更改推送通知的数据

此外,对于像Facebook这样的应用程序,推送通知是否携带任何数据给应用程序(我听说这是不好的做法),还是推送通知只是启动应用程序,应用程序在装入时刷新任何错过的消息?

回答

0

限制推送通知的显示在服务器端更好地处理。您的iOS应用程序中没有任何机制或代码会影响通知中心显示通知的速率(二进制支持/不支持)。

在最天真的实现中,您可以在后端执行一些操作,以跟踪上次发送推送通知的时间,并在稍后的某个时间间隔之前拒绝发送更多通知。我相信Facebook的这个实现更细致,但我认为这超出了这个问题的范围。

您应该随意发送自定义数据以及推送通知。它是支持的,而不是一件坏事。您只能发送小块信息(即不要期望发送数据来显示整个图像),而是可以在推送通知中发送所引用实体的对象ID之类的内容。例如,当Facebook向您发送“XXX张贴照片”时,他们可能会发送用户ID和照片ID以及通知,以便应用程序知道当您点击通知时立即显示哪个用户/照片。