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