后台移动网络使用量过高

当应用在后台连接移动网络时,应用会唤醒 CPU 并开启无线装置。如果反复执行此操作,可能会耗尽设备的电池电量。如果某个应用处于 PROCESS_STATE_BACKGROUNDPROCESS_STATE_CACHED 状态,则会被视为在后台运行。

本页面介绍了如何确定您的应用在后台运行时过度使用移动网络的原因以及应对此采取的措施。

检测问题

您可能并不总是知道您的应用在后台运行时过度使用了网络。如果您已经发布了应用,您可以通过 Android Vitals 来了解问题并相应地解决问题。

Android Vitals

当您的应用在后台执行过多 WLAN 扫描时,Android Vitals 可通过 Play 管理中心提醒您,从而帮助您改进应用性能。Android Vitals 认为后台网络使用量过高的标准是,在后台运行时,应用在 0.10% 的电池工作时段内每小时发送和接收的数据合计达 50 MB。

“电池工作时段”是指两次电池充满电的时间间隔。要了解 Google Play 如何收集 Android Vitals 数据,请参阅 Play 管理中心文档。

调查移动网络使用行为

Battery Historian 等工具可帮助您深入了解应用的移动网络使用情况。Battery Historian 针对每个应用直观呈现移动无线装置的使用情况,可帮助您更清晰地了解应用的动态。有关 Battery Historian 的更多信息,请参阅使用 Battery Historian 分析耗电情况。 在调查应用的移动网络使用行为时,您应该特别注意“移动网络使用”行。

如需了解 Battery Historian 的使用机制,请参阅 Batterystats 和 Battery Historian 演示

减少移动网络使用量

您可以将应用的移动网络使用量移至前台,提醒用户目前正在进行下载,并为他们提供暂停或停止下载的控件。为此,请调用 DownloadManager 并根据情况设置 setNotificationVisibility(int)