iOS推送通知如何工作?

时间:2013-06-23 15:53:26

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

如果没有设备需要轮询服务器,iOS“推送”通知如何传送到特定设备?

例如,假设我在Facebook上收到了一条新消息。 Facebook通知Apple我的设备应该收到通知。但Apple如何知道将消息推送到哪个设备/ IP?

5 个答案:

答案 0 :(得分:76)

每个设备都可以使用自己独特的设备令牌更新数据。这张照片解释了一切。

enter image description here

答案 1 :(得分:43)

这对我来说太过分了。

从文档中。

Apple推送通知服务(APN)将推送通知传播到已注册接收这些通知的应用程序的设备。每个设备都与服务建立经过认证和加密的IP连接,并通过此持久连接接收通知。提供商通过持久且安全的通道与APN连接,同时监控用于其客户端应用程序的传入数据。当应用程序的新数据到达时,提供程序准备并通过通道向APN发送通知,APN将通知推送到目标设备。

我建议您阅读文档以获取更多信息以及如何使用和配置。一切都在那里。

Push Notifications

答案 2 :(得分:19)

我创建了一个信息图来解释推送通知的工作流程。希望这有用。

enter image description here

答案 3 :(得分:12)

设备不会继续轮询服务器以获取推送通知。

为了简单起见,请考虑将iPhone连接到互联网。连接到互联网iPhone建立与Apple推送通知服务器的连接此连接是开放连接,这意味着数据到达服务器时数据可以从服务器投放到iPhone。

Apple不会将HTTP协议用于推送通知,但如果您了解HTTP协议,它几乎就是一种类似的方法。

http://en.wikipedia.org/wiki/Push_technology#HTTP_server_push

答案 4 :(得分:3)

this article中有一个非常好的推送通知摘要。

  

在iOS中,应用程序在后台无法做很多事情。应用程序只允许进行有限的活动,因此可以节省电池寿命。

     

但是,如果发生了一些有趣的事情并且您希望让用户知道这一点,即使他们目前没有使用您的应用程序,该怎么办?