基于连接类型来修改下载模式

作者: rain 分类: 移动 发布时间: 2012-03-30 13:56 6 条评论

不同的连接类型对电量的消耗是不一样的。不仅Wi-Fi和无线信号对电量的消耗是不同的,无线信号使用的不同传输技术对电量的消耗也是不同的。

使用 Wi-Fi

在大部分情况下Wi-Fi信号都提供了更好的带宽并且消耗比较少的电量。所以当Wi-Fi可用的情况下尽量通过Wi-Fi来传输数据。

您可以注册一个Broadcast Receiver来监听连接类型的改变,当检测到Wi-Fi可用的时候开始下载您的数据。像提高电池寿命描述的一样,根据具体情况来改变您的数据更新周期。

Use Greater Bandwidth to Download More Data Less Often

当使用无线信号传输的时候,高带宽一般消耗更多的电量。LTE比3G信号消耗更多的电量,而3G和2G信号相比同样要消耗更多的电量。

同样的当信号状态切换的时候,带宽越高的信号状态的超时时间(tail-time)比带宽低的超时时间要浪费更多的电量。

同时,高带宽意味着在同一时间您可以预抓取更多的数据。由于高带宽的信号超时时间需要消耗更多的电量,所以在一个传输会话中尽可能长时间的传输数据而减少更新的频度可以节省不少电量。

例如,假设LTE信号的带宽和耗电量都是3G的两倍,在每次传输会话中您尽可能的下载4倍的数据 — 差不多10Mb。在下载这些数据的时候还要考虑本地可用的缓存空间并且及时的刷新本地的缓存数据。

可以通过ConnectivityManager来检测连接的类型,然后修改对应的请求逻辑,如下所示:

本文出自 云在千峰,转载时请注明出处及相应链接。

本文永久链接: http://blog.chengyunfeng.com/?p=384

Ɣ回顶部