Page 138 - Web性能权威指南
P. 138

本章,特别是接下来几页中,“移动应用”这个词将包含广泛的意义。我们
                          所有关于移动网络性能的讨论,同样也适用于本机应用和浏览器应用,而
                          且与平台及浏览器制造商无关。


               8.1 节约用电


               说到移动设备,节约用电是设备制造商、运营商、应用开发者,以及应用的用户都
               会关心的话题。在拿不准或不知道某个功能为什么存在或怎么实现时,不妨问自己
               一个简单的问题:这个功能对电量有什么影响,或者它怎么做到省电?事实上,这
               是一个对应用的所有功能都适用的问题。

               移动网络的性能与电池使用时间天生联系在一起。而且,为了节约用电,无线接口
               的物理层还专门针对如下限制(或事实)做出了优化:
               •   全功率打开无线电模块只消几小时就可耗尽电量;
               •   对无线电功率的需求随着无线标准演进与代俱增;
               •   无线电模块的耗电量仅次于设备的屏幕;
               •   数据传输时无线电通信的耗电过程是非线性的。

               知道了这些之后,在开发移动应用时,就该尽量少用无线电接口。当然,并不是说
               完全不能使用无线电模块,毕竟移动联网应用肯定还是要上网的!只是考虑到无线
               电通信直接关系到电池使用时间,我们应该尽最大可能在无线电开启时传输数据,
               而尽量把唤醒无线电以传输数据的次数减到最少。


                          虽然 Wi-Fi 也使用无线接口传输数据,但重要的是必须知道 Wi-Fi 的底层
                          机制,及其延迟时间、吞吐量和耗电特点。这些与 2G、3G 和 4G 移动网
                          络相比,都有根本不同(参见 7.3.1 节)。因此,应用联网时的行为自然也
                          会因使用 Wi-Fi 或移动网络而有所不同。



                              使用 AT&T 应用资源优化器测量能源消耗

                谁都知道应该节约使用电池,但当前大多数平台都没有给开发人员配备必需的工
                具,以测量和优化应用。可喜的是,我们还可以找到第三方工具,比如 AT&T 免
                费的 Application Resource Optimizer(ARO,应用资源优化器)工具包(图 8-1)。









               122   |   第 8 章
   133   134   135   136   137   138   139   140   141   142   143