極光筆記丨iOS 15推送新特性

極光推送發表於2021-10-20


作者:極光高階工程師—李曉航

目錄

前言
Interruption level(中斷級別)
APNS Request API
定時通知摘要
對於時效性通知的說明
1、xcode中開啟對應能力
2、app需要在官方網站支援該許可權
給開發者的建議
寫在最後

前言

上一次我們分享了《初探iOS15推送新特性》,當時還處於一個iOS15的早期階段,很多功能還無法使用和確認。而在2021年9月21日Xcode13正式版釋出了,本篇文章會基於Xcode13正式版來對iOS15上的推送新特性做一個完整的探索。

Interruption level(中斷級別)

在釋出正式版後,我們對iOS15上的通知有了一個比較明確的認識。整體來看iOS15主要就是對通知進行了分級,也就是引數interruptionLevel。
The interruption level determines the degree of interruption associated with the notification。
說白了就是通過給通知設定不同的級別來達到不同的響應效果。中斷級別和iOS15新出的焦點模式息息相關,如果不瞭解焦點模式的同學可以參考我們的上一篇文章。

中斷級別目前分為四種:

Passive(被動的)
人們可以在閒暇時檢視資訊,比如餐廳推薦。
Added to the notification list; does not light up screen or play sound
被動型別的通知不會使手機亮屏並且不會播放聲音。

Active(活動,預設設定)
當資訊到達時,人們可能希望知道它,比如他們最喜歡的運動隊的分數更新。
Presented immediately; Lights up screen and may play a sound
活動型別的通知會使手機亮屏且會播放聲音,為預設型別,也是在iOS15出現之前的通知預設設定。
在焦點模式下,活動型別通知特點和被動型別的一樣。

Time Sensitive(時間敏感)
直接影響使用者並需要他們立即關注的資訊,如帳戶安全問題或包傳遞。
Presented immediately; Lights up screen and may play a sound; May be presented during Do Not Disturb。
時間敏感型別,性質和活動型別的通知一樣,會使手機亮屏且會播放聲音;可能會在免打擾模式(焦點模式)下展示。
實際上就是在焦點模式下開啟時間敏感型別的通知後,時間敏感型別的通知就能夠正常顯示的。如果不開啟也和被動型別的一樣。
如圖所示,開啟時效性通知後,在開啟此焦點模式的情況下,時效性通知是不會變成被動通知的。設定了允許通知的App不受焦點模式影響。

Critical(關鍵)
直接影響使用者並要求其立即關注的有關個人健康和公共安全的緊急資訊。關鍵通知非常罕見,通常來自政府和公共機構或醫療保健應用程式。您必須有權使用。(需要特殊申請)
Presented immediately; Lights up screen and plays sound; Always presented during Do Not Disturb; Bypasses mute switch; Includes default critical alert sound if no sound provided
會立刻展示,亮屏,播放聲音,無效免打擾模式,並且能夠繞過靜音,如果沒有設定聲音則會使用一種預設的聲音。
關鍵性通知需要特殊許可權申請,從已知的資訊上來看,這種型別的通知,有一點像過去的警報通知,會導致手機強制震動播放聲音並顯示,適用於地震等緊急情況。

APNS Request API

在之前的Beta版本中,由於蘋果沒有更新文件,我們無法得知如果在傳送通知的介面中設定interruptionLevel引數。
現在文件已經更新,新增引數如下。

參考蘋果官方文件《generating_a_remote_notification》

定時通知摘要

開啟後設定對應的App,被設定的App傳送的訊息將無法顯示到通知欄當中,但是會在設定的時間中集中顯示。時效性通知不受影響。
relevance-score可以在該功能中使用,分數高的會展示在摘要中。
在beta版本中我們看不到該功能的效果,正式版的效果如下

relevance-score目前仍然無法使用,經過大量測試發現relevance-score並沒有如預期一樣改變摘要顯示。查詢官網得知可能仍然是一個bug。
下圖為對應的問題

對於時效性通知的說明

時效性通知會有一個特殊的顯示效果,App名字上方會有一個時效性的提示字,如下圖

時效性通知不受摘要狀態影響,在焦點模式中通過開啟開關也能夠突破限制
時效性通知開發者無法直接使用,需要配置對應的許可權

1、xcode中開啟對應能力


2、app需要在官方網站支援該許可權


以上兩個許可權app的使用者是無感知的,但是需要開發者全開啟才能用。
時效性的通知會在開啟焦點模式的情況下,第一次展示的時候提示使用者是否關閉時效性通知許可權。
時效性通知和普通通知相比,較為敏感。
開發者可以在Extension中對通知的級別進行修改。

給開發者的建議

iOS15新增的這個中斷級別的改動是一個很重要的改動,合理的設定推送的中斷級別對於一個應用來說非常重要,推送體驗的好壞將會直接影響推送訊息的點選率,進而影響使用者活躍。所以適配iOS15對任何一個APP來說都很重要。
極光SDK在iOS 15 beta1版本就開始準備進行適配工作,到現在為止已經全部完成,開發者可以整合JPush SDK 4.4.0及其以上的版本完成自己APP在iOS15上的推送適配,同時可以使用API介面或者在我們的後臺portal端填寫對應的中斷級別來使用iOS15上的推送通知。

寫在最後

我們在研究iOS15的時候,對於iOS15的推送功能也有了一些自己的想法。
此次iOS15的推送更新是有明確的推送分級的,按照蘋果的推斷,如果推送體驗更好了,是一定是可以提高點選率的;而相反的如果推送體驗不好,使用者可能會直接關閉推送。

那麼在這個背景下,開發者們如何為推送定級呢?
如果想精確智慧的為推送定級,那麼自然會引出大資料和演算法的資源需求,則很有可能開發者們會因為各種各樣的限制而無法為推送定級。
於是我們發現,或許可以通過我們多年來的推送資料和演算法團隊對通知的內容進行評級,來實現更加智慧的傳送推送通知,給使用者帶來更好的體驗,以降低使用者的推送許可權關閉率,從而提高推送點選率和送達率。

或許在未來的某一天,我們會去實現這個想法。

相關文章