添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

前言

iOS10这个系统已经出来一年多了,那时候系统刚发布的时候也做过iOS10推送的适配,但是那时候推送是集成第三方的,所以对新的系统的推送的升级不是很了解,UserNotifications.frameworks和UserNotificationUI.frameworks是在iOS10上发布的,可以认为是通知大改版,用于在新系统上替换久的通知框架,苹果给了我们一个能够自定义推送的一个机会,但是因为那是时候的工作没有涉及到这一块,只是对iOS10上的新通知框架有个初步的了解,并没有深入学习这两个新的推送框架,因为最近产品上有这样的需求,需要自定义推送的UI和统计推送的送达率等,所以对这两个框架进行了深入的学习,并且写篇文章总结一下,本篇文章最要是围绕着Notification Service Extension和Notification Content Extension来展开,有关iOS10系统的通知特性请看文章下面推荐的文章。

知识准备

在深入学习之前,如果大家没有看过iOS10推送相关的内容,这里推荐一篇文章供大家学习和了解一下iOS10推送相关的一些知识,本篇文章涉及的内容跟下面的文章会有所关联,当然会深入一些,学习嘛~需要循序渐进

  • iOS开发 iOS10推送必看(基础篇)
  • iOS开发 iOS10 推送通知 UserNotifications
  • 自定义推送内容

    在iOS 10以上版本的系统,苹果推送了Notification Service Extension(通知内容扩展)给我们自定义推送的内容

    1、Notification Service Extension简介

    Notification Service Extension是在iOS10推出后的一个新的通知特性,原理如下图(图片来源网络):

    从图片我们可以看出,当手机接收到APNs推送给用户的消息后,中间添加了Service Extension这一个处理的步骤(当然也可以啥都不处理),通过这个扩展我们可以把我们要自定义的内容的处理放在这个步骤里面做,然后再呈现给用户,使得推送的内容更加丰富化,当然这里是有时间限制的(后面会详细讲)

    2、Notification Service Extension能做些什么事情