请注意,本文编写于 548 天前,最后修改于 548 天前,其中某些信息可能已经过时。
APNs(Apple Push Notification service,苹果推送通知服务)是iOS端的第三方系统级消息通道,它是由苹果提供和维护的与设备的公共长连接,用于实现消息的下发和推送。APNs的使用可以让消息在App被关闭或者网络功能被限制的情况下,仍然能够发送到接收人的设备,并通过手机的通知栏进行展示。下面是对APNs的一些详细总结:
-
APNs的作用:
- 提供系统级的消息下发通道,保证消息能够实时、稳定地到达接收人的设备。
- 在App被关闭或者网络功能被限制的情况下,通过手机的通知栏来下发消息给对应的接收人设备。
- 当用户点击通知时,能够重新唤醒App,提升消息的到达率和用户的活跃度。
-
APNs的流程:
- Provider(即IM服务器)将消息通过长连接发送到APNs。
- APNs将消息推送到接收方用户的iOS设备端,并在设备的通知栏进行展示。
- 用户通过点击通知等操作可以唤醒App,进行一系列的交互活动。
-
DeviceToken:
- DeviceToken是APNs用于区分识别不同iOS设备同一个App的唯一标识。
- 在与APNs的长连接通信时,通过DeviceToken作为当前连接设备的唯一标识进行系统消息的推送。
- DeviceToken一般不会发生变化,除非iOS系统升级或APNs禁用了该DeviceToken。
-
消息类型:
- 通过APNs可以下发各种类型的消息,每条消息都有一个Payload(负载)的数据结构,一般是一个JSON格式的字符串。
- Payload包括要发送的消息内容和推送相关的方式等数据信息,如通知的标题、子标题、具体内容,以及App的角标数等。
Learn more:
- 16 | APNs:聊一聊第三方系统级消息通道的事 - 极客时间已完结课程限时免费阅读
- 【iOS】即时消息技术剖析与实战客户端技术点总结 - 简书
- 基于APNs最新HTTP/2接口实现iOS的高性能消息推送(服务端篇)-腾讯云开发者社区-腾讯云
本文作者:yowayimono
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA
许可协议。转载请注明出处!