以下功能需要在基本推送的基础上实现,关于基本推送,后面我们专门出一篇文章介绍,并一步一步实现
一.新建Notification Service Extension
如图:
Identity规则:包名.xxx
系统会生成NotificationService类,这是用来接收推送消息json的类,即服务器向apns发送的json原始数据可以在这里拦截到,并进行处理
二.新建Notification Content Extension
如图:
Identity规则:包名.xxx
这个会生成NotificationViewController类,主要是设置推送消息的布局,如下:
那么问题来了,怎么将NotificationService获取到的图片信息传递到NotificationViewController类中并显示呢
我的做法是在NotificationService类中把图片下载到沙河,然后在NotificationViewController中加载沙盒图片(中间有很多细节,列如30s超时,这里不赘述),特别要注意,不同target(即Notification Service Extension与UNotification Content Extension)获取沙盒文件会出现路径不一样导致获取不到文件,以上代码中提供了一种方式,大家可以看看
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。