Google 致力于为黑人社区推动种族平等。查看具体举措

尽量减少定期更新的影响

最合适的定期更新频率因设备状态、网络连接、用户行为以及明确的用户偏好设置而异。

延长电池续航时间介绍了如何开发可根据主机设备状态修改其刷新频率的低电耗应用。其中包括在连接中断时停用后台服务更新,以及在电池电量不足时降低更新速率。

本课介绍了如何调整刷新频率以尽量减少后台更新对底层无线装置状态机的影响。

使用 Firebase 云消息传递替代轮询

每次您的应用对服务器进行轮询以检查是否需要更新时,都会激活无线装置,这在典型的 3G 连接中需要多达 20 秒的时间,从而会不必要地消耗电池电量。

Firebase 云消息传递 (FCM) 是一种轻量级机制,用于将数据从服务器传输到特定应用实例。借助 FCM,您的服务器可以通知您在特定设备上运行的应用有新数据可用。

与轮询(应用必须定期对服务器执行 ping 操作以查询新数据)相比,这种事件驱动型模式可让您的应用仅在得知有数据可供下载时才创建新连接。该模式最大限度地减少了不必要的连接,并降低了在应用内更新信息时的延迟。

FCM 通过持久性 TCP/IP 连接实现。虽然您可以自行实现推送服务,但最好使用 FCM。这样可最大限度地减少持久性连接的数量,使平台能够优化带宽并最大限度地减少对电池续航时间造成的关联影响。

网络调度工具

如果您的应用需要轮询,Android 平台会提供多种工具帮助您制定高效的时间表以完成轮询等网络任务。如需详细了解如何使用这些工具,请参阅后台处理指南