iPhone,Android 手機(jī)是如何收到推送通知的?
我們的手機(jī)或電腦是如何收到推送通知的?
通常我們可以使用消息解決方案 Firebase 來支持通知推送。下圖顯示了 Firebase Cloud Messaging(FCM)的工作原理。
FCM 是一種跨平臺消息解決方案,可以可靠地編寫、發(fā)送、排隊和路由推送通知。它在消息發(fā)送方(應(yīng)用程序服務(wù)器,App Server)和接收方(客戶端應(yīng)用程序,Client Apps)之間提供了統(tǒng)一的 API。應(yīng)用程序開發(fā)人員可以使用該解決方案來提高用戶留存率。
第 1 - 2 步
當(dāng)客戶端應(yīng)用程序首次啟動時,客戶端應(yīng)用程序會向 FCM 發(fā)送憑證,包括 Sender ID、API Key 和 App ID。FCM 會為客戶端應(yīng)用程序?qū)嵗勺粤钆疲≧egistration Token,因此注冊令牌也稱為實例 ID)。該令牌必須包含在通知中。
第 3 步
客戶端應(yīng)用程序?qū)⒆粤钆瓢l(fā)送到應(yīng)用程序服務(wù)器。應(yīng)用程序服務(wù)器會緩存令牌,以便后續(xù)通信使用。隨著時間的推移,應(yīng)用服務(wù)器會有太多的令牌需要維護(hù),因此建議的做法是存儲帶有時間戳的令牌,并不時刪除過期令牌。
第 4 步
發(fā)送消息有兩種方法。一種是直接在控制臺圖形用戶界面中編寫消息(第 4.1 步),另一種是從應(yīng)用程序服務(wù)器發(fā)送消息(第 4.2 步)。
第 5 步
FCM 接收信息,如果設(shè)備不在線,則將信息放入存儲隊列。
第 6 步
FCM 將信息轉(zhuǎn)發(fā)到平臺級傳輸層。該傳輸層處理特定于平臺的配置。
第 7 步
將信息路由到目標(biāo)設(shè)備??筛鶕?jù)應(yīng)用程序服務(wù)器發(fā)送的配置顯示通知。