和安卓截然相反?為什么iOS手動(dòng)關(guān)閉后臺(tái)卻更耗電,看完基本懂了
安卓手機(jī)用戶應(yīng)該都有一個(gè)習(xí)慣:當(dāng)打開APP太多,感覺到手機(jī)略微卡頓時(shí),會(huì)返回桌面劃一下,手動(dòng)強(qiáng)制關(guān)閉后臺(tái)。這樣做不僅可以騰出運(yùn)存容量,而且可以降低硬件功耗。
不過讓很多人意外的是,明明操作界面差不多,但是iOS卻和安卓截然相反。按照蘋果官方的說法,它是不建議用戶手動(dòng)關(guān)閉后臺(tái)的。因?yàn)樘O果認(rèn)為:頻繁關(guān)閉后臺(tái),反而會(huì)導(dǎo)致手機(jī)消耗更多電量,得不償失。這是為什么呢?原因有4點(diǎn),看完基本懂了。
首先,iOS擁有成熟的自動(dòng)清理后臺(tái)機(jī)制,不像安卓一樣,需要用戶手動(dòng)釋放內(nèi)存。舉個(gè)例子,iOS的APP被切到后臺(tái)后,如果在數(shù)分鐘內(nèi)沒有返回前臺(tái),則該APP的一切活動(dòng)將被凍結(jié)。需要注意的是,凍結(jié)后的APP不占用CPU的資源,只占用內(nèi)存容量,這就是所謂的“應(yīng)用墓碑”。
第二,iOS只允許后臺(tái)APP進(jìn)行有限的活動(dòng),并通過“后臺(tái)應(yīng)用刷新”這一機(jī)制,間接性刷新頁面。至于APP通知,則由統(tǒng)一推送接口來傳達(dá)。和安卓不同,由于墓碑機(jī)制,iOS駐留在后臺(tái)的APP,其實(shí)只消耗極少的硬件資源,絕大多數(shù)資源都集中在前臺(tái)APP上。
第三,在這種情況下,頻繁手動(dòng)關(guān)閉后臺(tái)是沒必要的。因?yàn)檫@不僅不能提高前臺(tái)APP的流暢度,反而會(huì)增加耗電。在iOS現(xiàn)有的機(jī)制下,后臺(tái)APP只需要極低功耗就能維持,非活躍后臺(tái)APP可以凍結(jié)起來,且時(shí)間久了會(huì)自動(dòng)清理。但是如果頻繁關(guān)閉后臺(tái),系統(tǒng)就需要重新加載APP,反而消耗更多的電量。
第四,iOS的設(shè)計(jì)理念,就是把絕大多數(shù)資源都集中在前臺(tái)應(yīng)用。正因這一套高效的分配機(jī)制,iOS不需要為后臺(tái)應(yīng)用浪費(fèi)資源。所以,iPhone只需要較低的運(yùn)存,流暢度就能媲美大運(yùn)存的安卓旗艦。除非遇到相機(jī)、3D手游這類需要占據(jù)大量?jī)?nèi)存的單個(gè)應(yīng)用,才會(huì)力不從心。
反觀安卓對(duì)APP后臺(tái)的處理方式,你就會(huì)發(fā)現(xiàn)iOS確實(shí)更加高效的系統(tǒng)。國內(nèi)手機(jī)廠商沒有統(tǒng)一的通知推送接口,所以APP會(huì)以后臺(tái)駐留、鏈?zhǔn)絾拘?、懸浮窗等流氓方式,來讓?yīng)用常駐后臺(tái)。目的很簡(jiǎn)單:其一是為了保證將通知推送給用戶,其次是為了提高APP的日活率。
于是,安卓手機(jī)安裝的APP越多,對(duì)硬件資源的擠壓程度就越厲害。因?yàn)樗枰瑫r(shí)兼顧前臺(tái)和后臺(tái),無論多大的運(yùn)存,對(duì)安卓手機(jī)來說都是不夠用的。說實(shí)話,系統(tǒng)機(jī)制的缺失,通過硬件來彌補(bǔ),也只是緩兵之計(jì),不能治本。
總而言之,手動(dòng)關(guān)閉后臺(tái)是安卓的陋習(xí),這個(gè)操作在iOS上沒有實(shí)質(zhì)性作用,反而徒增功耗。如果你是從安卓切換到iOS的萌新,希望你能放棄這個(gè)壞習(xí)慣。對(duì)此你怎么看,歡迎一起討論。