浅析iOS中Push通报的使用【图文+视频】
注:本系列学习帖子我在DevDiv.com移动开发社区原创首发
转载请注明出处:BeyondVincent(破船)@DevDiv.com
如果你有什么问题也可以前往交流
下面是首发地址:
浅析iOS中Push通知的使用
【注】本帖子对应的学习视频,点击这里前往观看:
1. Push机制的介绍
2. Push机制的使用
3. Push故障的排除
4. Demo示例
Push机制
1. Push机制的介绍
iPhone 对于应用程序在后台运行有诸多限制(除非你越狱)。因此,当用户切换到其他程序后,原先的程序无法保持运行状态。对于那些需要保持持续连接状态的应用程序(比如社区网络应用),将不能收到实时的信息。
为解决这一限制,苹果推出了APNs(苹果推送通知服务)。APNs 允许设备与苹果的推送通知服务器保持常连接状态。当你想发送一个推送通知给某个用户的iPhone上的应用程序时,你可以使用 APNs 发送一个推送消息给目标设备上已安装的某个应用程序。
Push机制的类型:
四种:徽章、提示框、声音和横幅,具体表现形式如下图:
Push机制的4个组件
如下图:
Provider
APNS
iPhone设备
Client App
其中APNS(Apple Push Notification Service)是由苹果提供的消息推送服务中心,所有的消息都经由这里转发给相应的设备。
Provider和Device与APNS进行通信时,时建立在SSL/TLS安全连接之上的。如下面的两个图所示(TSL的建立过程)
Provider与APNS之间的通信还需要-----DeviceToken
DeviceToken是设备令牌,有APNS生成,并返回给设备,再由设备提供给Provider。
如下面的图是DeviceToken获取的过程: