最近有时间研究了一下iOS10新出的通知框架,不得不说,新的框架开放了很多新的功能,能够让你用起来欲罢不能,哈哈
总结起来新的框架有以下几点不同点
1、不在区分本地和远程通知,有了统一的行为。本地通知又分为如下多种类型
UNTimeIntervalNotificationTrigger (本地通知) 一定时间之后,重复或者不重复推送通知
UNCalendarNotificationTrigger(本地通知) 一定日期之后,重复或者不重复推送通知
UNLocationNotificationTrigger (本地通知)地理位置的一种通知,当用户进入或离开一个地理区域来通知
2、应用在前台的时候也能够弹出提示
3、能够获取到用户的设置,而不像之前一样,拿不到任何用户针对应用的通知设置,甚至应用可以修改用户的设置,但是不建议这样做
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center getNotificationSettingsWithCompletionHandler:^(UNNotificationSettings * _Nonnull settings) {
NSLog(@"通知配置信息:\n%@",settings);
}];
4、通知的发送采用类似于网络请求的方式,开发者更加容易接受
5、通知内容显示增加了标题和副标题,主副标题加粗显示,新增多媒体通知类型,能够显示图片、音乐和视频
{
"aps":{
"alert":{
"title":"标题",
"subtitle":"副标题",
"body":"内容"
},
"sound":"default",
"badge":1
}
}
6、开发者可以自定义通知的UI界面
7、支持通知的撤回、修改和删除已经展示的通知和未达到的通知
下面会分几个篇章介绍学习过程的记录,由于用到了拓展应用,需要准备三个证书,id是类似于下面,具体根据实际情况自行定义
com.xxx.notification
com.xxx.notification.content
com.xxx.notification.service
远程通知发送工具,在mac的app store上有一款工具(Easy APNs Provider),可以直接向苹果的APNS推送消息,便于查看效果。工具的具体使用就不介绍了,很简单