通知:
iOS操作系統層面上的功能,App來了一條通知,系統來了升級通知,代辦事項來了一條通知,這裏的通知指的是iOS操作系統內的一個功能,更多體現在UI,交互,觸發邏輯,通知方式上。
推送:
推送指的是由APNs服務器、ProviderService、iOS系統、App構成的通訊系統,是移動互聯網和傳統Web最明顯的區別的地方。正因爲有了推送,實現了服務器能夠反向與用戶建立聯繫,而不是等待用戶訪問Web服務器。
APNs(Apple Push Notification Service - 蘋果推送通知服務)
APNs官方文檔
APNs是推送的核心。該服務與iOS設備建立強大的持久鏈接通訊(和間接WatchOS,TVOS,和MacOS設備)。在早期的時候,iOS通過管理AppSSL認證的推送證書與APNs建立起長連接通訊,但不是可靠的通訊。雖有,APNs使用持久鏈接進行服務器推送。在長期的演變過程中,現在iOS 10提供的APNs服務是基於HTTP/2協議棧同時使用Json Web Token(json令牌)保證通訊安全。
1.iOS 8以後, APNs推送的字節是2k, iiOS 8以前是256字節,iOS 10現在是4K
2.iOS 9以後, APNs支持HTTP/2協議棧,優化長連接,具有標準的HTTP返回的和管道複用技術。
3.iOS 10以後,APNs可根據推送消息的唯一標識符查詢某條消息是否被用戶閱讀,可更新某一推送消息,而不用發多重讀的多條信息