IOS系統推送原理

2022-04-02 03:22:58 字數 1575 閱讀 5790

ios推送大致原理如下圖

1、provider:就是為指定ios裝置應用程式提供push的伺服器,(如果ios裝置的應用程式是客戶端的話,那麼provider可以理解為服務端[訊息的發起者]);

2、apns

3、iphone:用來接收apns下發下來的訊息;

上圖可以分為三個階段:

階段一:provider[服務端]把要傳送的訊息,目的ios裝置標識打包,傳送給apns;

階段二:apns在自身的已註冊push服務的ios裝置列表中,查詢有相應標識的ios裝置,並將訊息傳送到ios裝置;

階段三:ios裝置把傳送的訊息傳遞給對應的應用程式,並且按照設定彈出push通知。

具體過程,見下圖

4、當push服務端程式滿足傳送訊息條件了,[provider]向[apns service]傳送訊息;

ios裝置上的一些基本概念:

udid:ios裝置的乙個唯一識別碼,每台ios裝置都有乙個獨一無二的編碼,這個編碼,我們稱之為識別碼,也叫做udid( unique device identifier)。

bundle id:(bundle identifier)是一款ios應用的唯一標識,應用與bundle id之間是唯一對應關係。

device token:裝置令牌、使用者標識

1.獲取devicetoken:

1>客戶端向蘋果服務apns,傳送裝置的udid和英語的bundle identifier.

2>經蘋果伺服器加密生成乙個devicetoken

3>將當前使用者的devicetoken(使用者標識),傳送給自己應用的伺服器

4>自己的伺服器,將得到的devicetoken,進行儲存

!!!device有可能會發生變化

假如我的 iphone 從 backup 中恢復資料,device token 不會發生變化。

使用者抹除 iphone 的資料時,意味著要與這台手機撇清關係,比如**或者送人。此時為了保護隱私,device token 會改變。

2.獲取到devicetoken後推送訊息給裝置

5>需要推送的時候,將訊息和devicetoken一起傳送給apns,蘋果伺服器,再通過devicetoken找到使用者,並將訊息發給使用者

ios 推送原理

1 註冊 為應用程式申請訊息推送服務。此時你的裝置會向apns伺服器傳送註冊請求。2 apns伺服器接受請求,並將devicetoken返給你裝置上的應用程式 3 客戶端應用程式將devicetoken傳送給後台伺服器程式,後台接收並儲存。4 後台伺服器向apns伺服器傳送推送訊息 5 apns伺服...

iOS遠端訊息推送原理

1 註冊 為應用程式申請訊息推送服務。此時你的裝置會向apns伺服器傳送註冊請求。2 apns伺服器接受請求,並將devicetoken返給你裝置上的應用程式 3 客戶端應用程式將devicetoken傳送給後台伺服器程式,後台接收並儲存。4 後台伺服器向apns伺服器傳送推送訊息 5 apns伺服...

iOS推送 實現本地推送

第一步 建立本地推送 建立乙個本地推送 uilocalnotification notification uilocalnotification alloc init autorelease 設定 10秒之後 nsdate pushdate nsdate datewithtimeintervalsi...