优化服务器发起的网络使用

服务器程序向您的应用发送的网络流量可能很难进行优化。解决此问题的方法是让应用定期轮询服务器以检查更新。当您的应用启动设备的无线装置时,如果只收到一条回复,告知没有新数据可用,此方法可能会浪费网络连接和电源。一种效率更高的方法是让服务器在有新数据时通知您的应用,但是在以前,查明如何从服务器向多达数千台设备发送通知并非易事。

为了解决这一通信问题,Firebase Cloud Messaging (FCM) 服务允许您的服务器向安装于任何位置的应用实例发送通知,从而提高了网络效率,并降低了耗电量。

本节课将指导您如何应用 FCM 服务以减少针对服务器发起的操作的网络使用并减少电池消耗。

使用 FCM 发送服务器更新

Firebase Cloud Messaging (FCM) 是一种轻量级机制,用于将简短消息从应用服务器传输到您的应用。借助 FCM,您的应用服务器会使用消息传递机制通知您的应用有新数据可用。此方法在没有可用数据的情况下不会与后端服务器通信以获取新数据,从而消除了应用产生的网络流量。

例如,一个应用在列出会议上的扬声器会话时可使用 FCM。服务器上的会话出现更新时,服务器会向您的应用发送一条简短消息,告知其有更新可用。然后,您的应用只有在服务器具有新数据时才会与服务器通信以更新设备上的会话。

比起让应用轮询服务器上的更改,FCM 的效率更高。FCM 服务消除了轮询后不返回任何更新时的不必要连接,并避免因为运行定期网络请求而导致设备的无线装置开启。由于许多应用都可以使用 FCM,因此在应用中使用 FCM 会减少设备上所需的网络连接总数,让设备无线装置更多地处于休眠状态。