最佳化處理伺服器啟動的網路用量

由伺服器程式傳送至您應用程式的網路用量,並不容易進行最佳化處理。為解決這個問題,有一種作法是將應用程式設為定期對伺服器進行輪詢,以便檢查更新。但這種方式可能會讓應用程式平白耗用電力及網路連線功能,因為在應用程式啟動裝置無線電時,可能收到的回應就只是無新資料可用。另外一個更有效的方式,是在有新資料時讓伺服器通知應用程式;只是要從伺服器傳送通知到可能數以千計的裝置上,在過去並不容易。

Firebase 雲端通訊 (FCM) 服務可允許伺服器傳送通知至已安裝的應用程式執行個體,從而提高網路效率並降低耗電量,進而解決這個通訊問題。

本課程會說明如何套用 FCM 服務,以減少伺服器啟動動作的網路用量及電池電力耗損。

使用 FCM 傳送伺服器更新

Firebase 雲端通訊 (FCM) 是一種輕量機制,可從應用程式伺服器傳送簡短訊息至應用程式。使用 FCM,應用程式伺服器會利用訊息傳遞機制,在有新資料可用時通知應用程式。這種方式不會在沒有資料可用時,聯絡後端伺服器取得新資料,因此可以免除應用程式可能需要執行的網路流量。

FCM 的一個使用範例,是列出會議中演講者工作階段的應用程式。 在伺服器更新工作階段後,伺服器會傳送簡短訊息至應用程式,通知有可用的更新。然後應用程式就可以呼叫伺服器,只在伺服器有新資料時更新裝置中的工作階段。

當伺服器有變更時,FCM 比應用程式輪詢更有效率。輪詢需要執行網路連線,就算沒有更新可傳回也一樣;而運用 FCM 服務便可避免這種不必要的連線行為及定期網路要求,因此也就不會啟動裝置的無線電功能。由於許多應用程式都可以使用 FCM,因此在應用程式中使用 FCM 可減少裝置中所需的網路連線總數,並允許裝置無線電更常進入休眠。