和安卓截然相反?为什么iOS手动关闭后台却更耗电,看完基本懂了

移动开发 iOS
安卓手机用户应该都有一个习惯:当打开APP太多,感觉到手机略微卡顿时,会返回桌面划一下,手动强制关闭后台。这样做不仅可以腾出运存容量,而且可以降低硬件功耗。

安卓手机用户应该都有一个习惯:当打开APP太多,感觉到手机略微卡顿时,会返回桌面划一下,手动强制关闭后台。这样做不仅可以腾出运存容量,而且可以降低硬件功耗。

不过让很多人意外的是,明明操作界面差不多,但是iOS却和安卓截然相反。按照苹果官方的说法,它是不建议用户手动关闭后台的。因为苹果认为:频繁关闭后台,反而会导致手机消耗更多电量,得不偿失。这是为什么呢?原因有4点,看完基本懂了。

首先,iOS拥有成熟的自动清理后台机制,不像安卓一样,需要用户手动释放内存。举个例子,iOS的APP被切到后台后,如果在数分钟内没有返回前台,则该APP的一切活动将被冻结。需要注意的是,冻结后的APP不占用CPU的资源,只占用内存容量,这就是所谓的“应用墓碑”。

第二,iOS只允许后台APP进行有限的活动,并通过“后台应用刷新”这一机制,间接性刷新页面。至于APP通知,则由统一推送接口来传达。和安卓不同,由于墓碑机制,iOS驻留在后台的APP,其实只消耗极少的硬件资源,绝大多数资源都集中在前台APP上。

第三,在这种情况下,频繁手动关闭后台是没必要的。因为这不仅不能提高前台APP的流畅度,反而会增加耗电。在iOS现有的机制下,后台APP只需要极低功耗就能维持,非活跃后台APP可以冻结起来,且时间久了会自动清理。但是如果频繁关闭后台,系统就需要重新加载APP,反而消耗更多的电量。

第四,iOS的设计理念,就是把绝大多数资源都集中在前台应用。正因这一套高效的分配机制,iOS不需要为后台应用浪费资源。所以,iPhone只需要较低的运存,流畅度就能媲美大运存的安卓旗舰。除非遇到相机、3D手游这类需要占据大量内存的单个应用,才会力不从心。

反观安卓对APP后台的处理方式,你就会发现iOS确实更加高效的系统。国内手机厂商没有统一的通知推送接口,所以APP会以后台驻留、链式唤醒、悬浮窗等流氓方式,来让应用常驻后台。目的很简单:其一是为了保证将通知推送给用户,其次是为了提高APP的日活率。

于是,安卓手机安装的APP越多,对硬件资源的挤压程度就越厉害。因为它需要同时兼顾前台和后台,无论多大的运存,对安卓手机来说都是不够用的。说实话,系统机制的缺失,通过硬件来弥补,也只是缓兵之计,不能治本。

总而言之,手动关闭后台是安卓的陋习,这个操作在iOS上没有实质性作用,反而徒增功耗。如果你是从安卓切换到iOS的萌新,希望你能放弃这个坏习惯。对此你怎么看,欢迎一起讨论。

责任编辑:华轩 来源: 今日头条
相关推荐
点赞
收藏

51CTO技术栈公众号