网页应用程序的电池影响?

3

我正在学习移动web应用程序,它们看起来很有趣。除此之外,我想知道原生应用程序和Web应用程序(Phonegap、intel xdk等)之间的电池消耗是否有显著差异?

1个回答

10

使用收发器(即手机/平板电脑上的接收器和发射器)会导致显著差异。在任何移动设备上,无论是笔记本、平板还是手机,处理器和外围设备都会进入省电睡眠状态。处理器睡眠状态称为C状态。外围设备睡眠状态称为D状态。因此,当您的手机处于空闲状态时,电池寿命就会更长。无论是处理器还是外围设备,它们都需要耗费大量电力,而原生应用程序将使用更多的处理器但较少的昂贵外围设备(包括GPS)。

  • 如果您的网络应用程序有很多云访问,则会耗费电池电量。
  • 如果您的原生应用程序从不休眠或得到任何休息(例如它进行轮询而不使用中断,或者中断周期太短),则会耗费电池电量。

因此,理想的应用程序可以平衡原生和网络计算,以:

  • 最小化处理器使用(更具体地说,是使处理器处于空闲状态的时间最长)
  • 最小化外围设备使用(意为减少网络访问次数)

从设计师的角度来看,您需要将尽可能多的计算移动到云端,同时尽可能地保持数据本地化。


嗨,泰勒,我知道这是一个老话题,但我想再问一些问题。我有一个基于Javascript / Canvas的街机游戏,使用了大量的图形和音频。它还通过webAudio API播放持续的背景音乐。我已经使用Phonegap打包好了,并且正在使用iPhone6上的Apple Testflight进行测试。没有外部调用和GPS使用。从这个意义上说,它是自包含的。但是每个游戏循环都执行了大量的功能。我正在使用wkWebView。仅几分钟后电池就会耗尽很多!你有什么想法吗? - MarkW
在两个“最小化”项目符号后,还有另一种方法:请求突发。例如,一旦应用程序发送请求,无线电信号就会升至高功率,并保持一段时间。因此,如果您在几秒钟内发送许多其他请求,则不会长时间保持无线电处于高功率模式。但是,如果您的应用程序每分钟发送1次请求,则永远不会让GSM电路进入低功率状态。请参见此处 - Alireza

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接