最近有時間研究了一下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推送消息,便於查看效果。工具的具體使用就不介紹了,很簡單