ios推送原理

(由于项目用的onesignal推送,这里稍微说了下onesignal在推送中的角色)

一、推送机制

iOS消息推送的工作机制可以简单的用下图来概括:


消息推送机制图

1.Provider:某个iPhone软件的推送服务器(通常指我们的后台服务器或者onesignal后台)
2.notification:推送消息
3.APNS:是Apple Push Notification Service的缩写,是苹果的消息推送服务器。
4.iPhone:苹果用户手机
5.Client App:苹果用户手机应用软件(app)

上图可以分为三个阶段:
第一阶段:Provider把要发送的消息和目的iPhone的唯一标识(标识哪里来,别急,下面推送过程会讲解)打包,发给APNS。

第二阶段:APNS在自己的推送服务器的iPhone列表中,根据Provider提供的目的iPhone的唯一标识查找有相应标识的iPhone,并把消息发送到相应的iPhone。

第三阶段:iPhone把发来的消息传递给相应的应用程序,并且按照设定弹出推送通知。

注意:无论是iPhone客户端和APNS,还是Provider和APNS,都需要通过苹果证书进行连接。

二、消息推送过程

iOS消息推送的过程可以用下图来概括:


ios推送原理_第1张图片
消息推送过程图

1、Your App:你手机上的应用程序(app)
2、iOS:苹果手机系统(用来注册消息推送以获取device token,device token就是上面说的唯一标识)
3、APNS Server:苹果的消息推送服务器
4、Your Server:你的后台服务器或者onesignal服务器

上图流程如下:
1、Your App通过iOS向APNS Server注册消息推送。

2、iOS从APNS Server获取device token,Your App接收device token。

3、Your App将device token发送给Your Server(后台服务器或者onesignal后台)。

4、Your Server(后台服务器或者onesignal后台)向APNS服务发送消息。

5、APNS Server通过device token将消息发送给iPhone应用程序。

原文:http://www.jianshu.com/p/f35d6ebe2948
原文说的很好,本文针对原文加以修改,和相应说明

你可能感兴趣的:(ios推送原理)