编辑
2023-11-09
IM即时通讯
00
请注意,本文编写于 548 天前,最后修改于 548 天前,其中某些信息可能已经过时。

APNs(Apple Push Notification service,苹果推送通知服务)是iOS端的第三方系统级消息通道,它是由苹果提供和维护的与设备的公共长连接,用于实现消息的下发和推送。APNs的使用可以让消息在App被关闭或者网络功能被限制的情况下,仍然能够发送到接收人的设备,并通过手机的通知栏进行展示。下面是对APNs的一些详细总结:

  1. APNs的作用:

    • 提供系统级的消息下发通道,保证消息能够实时、稳定地到达接收人的设备。
    • 在App被关闭或者网络功能被限制的情况下,通过手机的通知栏来下发消息给对应的接收人设备。
    • 当用户点击通知时,能够重新唤醒App,提升消息的到达率和用户的活跃度。
  2. APNs的流程:

    • Provider(即IM服务器)将消息通过长连接发送到APNs。
    • APNs将消息推送到接收方用户的iOS设备端,并在设备的通知栏进行展示。
    • 用户通过点击通知等操作可以唤醒App,进行一系列的交互活动。
  3. DeviceToken:

    • DeviceToken是APNs用于区分识别不同iOS设备同一个App的唯一标识。
    • 在与APNs的长连接通信时,通过DeviceToken作为当前连接设备的唯一标识进行系统消息的推送。
    • DeviceToken一般不会发生变化,除非iOS系统升级或APNs禁用了该DeviceToken。
  4. 消息类型:

    • 通过APNs可以下发各种类型的消息,每条消息都有一个Payload(负载)的数据结构,一般是一个JSON格式的字符串。
    • Payload包括要发送的消息内容和推送相关的方式等数据信息,如通知的标题、子标题、具体内容,以及App的角标数等。

Learn more:

  1. 16 | APNs:聊一聊第三方系统级消息通道的事 - 极客时间已完结课程限时免费阅读
  2. 【iOS】即时消息技术剖析与实战客户端技术点总结 - 简书
  3. 基于APNs最新HTTP/2接口实现iOS的高性能消息推送(服务端篇)-腾讯云开发者社区-腾讯云

本文作者:yowayimono

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!