iOS 滑动关后台会影响续航是真的,但并不会损伤你的电池
2020/3/10 14:01:50
本文主要是介绍iOS 滑动关后台会影响续航是真的,但并不会损伤你的电池,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前不久,#苹果建议不要滑动关闭后台程序#这个话题上了微博的热搜。
这个话题的源头,是因为英国的《太阳报》的一篇报道中写道“如果您经常关闭应用程序,则 iPhone 会变慢并损耗电池。”
对此事,苹果也在官方渠道发布声明表示“确实如此”。并表示 iPhone 电池寿命普遍偏短的原因,就是用户习惯性的手动关闭应用程序,这不仅会缩短电池的使用寿命,也会导致设备的速度变慢。
在此之前,我相信大部分人都和我一样,认为后台的应用程序会占用 CPU、消耗电量,因此会经常性的手动关闭很多应用程序。
但苹果为什么这么说呢?原理是啥?电池寿命真的是被我们一下一下划没的么?
后台的应用程序其实已经被“冻结”
这个观念差异的背后,其实是来源于用户和官方的认知差异。
事实上早在 2016 年,时任苹果软件高级副总裁的 Craig Federighi 就针对用户的邮件进行了回复。
但这个回复在当时并未被大部分人所了解。
而事实上,iOS 为了让设备减少不必要的系统资源开销,并保持系统的流畅,它的后台更应该叫做「多任务切换界面」。而这得益于 iOS 特殊的「墓碑机制」。
名词解析:墓碑机制简单来说,墓碑机制就是当 App 进入后台前将以某种形式持久化,然后释放其正在使用的资源(包括内存、CPU等),等待 App 再次被唤醒时,将再将这个保存的状态恢复出来,此时应用跟没有被杀死继续运行了一样。
实际上 iOS 并不是严格意义上的墓碑机制,其在应用进入后台时可以向系统申请一定时间的后台运行时间(一般不超过10分钟),之后才会被完全挂起。
根据这个机制我们可以知道,我们之前滑动关闭的并非是应用程序,而是类似于应用程序的快捷打开方式。
而如果想真正的关闭一个应用程序,需要将这个应用从 RAM 中移除(比如重启手机),这时再次启动程序时系统需要重新调动资源,与冻结状态相比,所占用的 CPU 和消耗的电量更高,因此苹果方面建议除非应用程序无响应,否则不要滑动强制退出。
当然,不排除一些应用程序会有更高的“权限”,在后台时也会占用系统资源,我们可以在「设置」中查看是否有哪些应用在滥用权限。
滑动关闭后台应用影响电池寿命?
先放结论:并不会。这是以讹传讹。
我们能在很多媒体报道中看到“滑动关闭后台应用不仅没用,还会影响电池寿命”,这其实是因为翻译不精准导致的错误传言。
《太阳报》的原文标题是《QUIT IT!Your iPhone gets SLOWER and loses battery life if you always swipe apps closed》,这里面提到的「battery life」被很多人翻译成了「电池寿命」,但实际上这个词一般表示电池的续航时间,英文语境中电池寿命一般会用「battery health」来表示。
正如我们上文所示,滑动关闭后台应用后,重新启动将会消耗更多的 CPU 和电池电量,因此也会相应的降低电池的续航,和电池的使用寿命并没有关系。
理论上影响电池寿命的因素目前有四个:
- 充/放电速度
- 电池温度
- 放电深度(DOD)
- 电池循环次数
很多人在买卖二手笔记本的时候都会关注的参数就是「电池循环次数」,因为这个是影响电池寿命和健康程度的关键因素之一。
如果想要通过健康的手机使用习惯来延长手机的电池寿命,这里有一个建议就是关闭某些应用程序的系统通知(也就是常说的弹窗广告)。
安卓手机可以滑动杀后台么?
iOS 系统不建议频繁滑动关闭后台的应用程序,那么 Android 系统可以么?
答案是:可以。
背后的原因是 iOS 与 Android 的后台机制并不相同。文章开头我们介绍了 iOS 系统的「墓碑机制」,而 Andriod 系统并没有采用这一机制,所以大部分 Android 系统的应用程序切换到后台后,仍然在占用着 CPU。而滑动关闭后台的程序也就真的是把程序给彻底关闭了。
这也是为什么Andriod 系统的手机容易变卡、发烫。就是因为 Android 的运存总是很大,不过从安卓 5.0 之后,因为各大厂商对系统做的优化和硬件的迭代发展,这种情况现在也是越来越少了。
总结一下我们今天的文章,大致有以下几个观点:
- 对于广大的iPhone用户来说,还是乖乖按照苹果官方的说法操作,没事就别随便做出滑动退出APP这种“骗自己”的行为了;
- 滑动关闭后台程序不会影响电池寿命;
- Andriod 系统手机因为后台机制与 iOS 系统不同,因此滑动关闭后台程序确实可以释放 CPU。
你觉得这两种系统的机制,哪个更好一些?
这篇关于iOS 滑动关后台会影响续航是真的,但并不会损伤你的电池的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-10-05Swift语法学习--基于协议进行网络请求
- 2022-08-17Apple开发_Swift语言地标注释
- 2022-07-24Swift 初见
- 2022-05-22SwiftUI App 支持多语种 All In One
- 2022-05-10SwiftUI 组件参数简写 All In One
- 2022-04-14SwiftUI 学习笔记
- 2022-02-23Swift 文件夹和文件操作
- 2022-02-17Swift中使用KVO
- 2022-02-08Swift 汇编 String array
- 2022-01-30SwiftUI3.0页面反向传值