1
本文作者: 李樂佳 | 2015-06-15 11:55 |
文/李樂佳
蘋果在 WWDC 剛發(fā)布的 iOS 9 提供了一個新的“節(jié)能模式”,通過暫停后臺任務(wù),這個節(jié)能模式能幫設(shè)備最多三個小時(shí)的使用時(shí)間,例如當(dāng)設(shè)備在面朝下放置的時(shí)候,即使通知到達(dá),屏幕也不會被點(diǎn)亮,畢竟其實(shí)屏幕是耗電的最大元兇。
蘋果對與移動設(shè)備(Macbook)或者手持設(shè)備(iPhone)的定義一開始就非常清晰,對于它們的續(xù)航時(shí)間的保證在產(chǎn)品定義的階段就有了很高權(quán)重的考量。所以當(dāng) Windows PC 的筆記本電腦普遍續(xù)航還只有三個小時(shí)左右的時(shí)候,Macbook 的續(xù)航就已經(jīng)到了當(dāng)時(shí)驚人的6-7個小時(shí),當(dāng) PC 終于提高了一些到了4-6個小時(shí)之后,Macbook Air 續(xù)航就已經(jīng)能達(dá)到12個小時(shí)。
提升設(shè)備續(xù)航無非開源與節(jié)流
開源主要是硬件方面的工作,在現(xiàn)階段電池技術(shù)已經(jīng)到瓶頸階段,最直觀的解決方案無非是增加電池容量,也就是增大電池體積,既而極大壓縮主板空間,這個在Macbook 與 iPhone 上都有明顯體現(xiàn)。
而硬件上的節(jié)流在一開始蘋果其實(shí)并沒有太多的辦法,無非就是選擇更低功耗的 CPU 與其他元器件,但是在 iPhone 4 上的 A4 芯片 iMac Retina 顯示屏的自主研發(fā),都從側(cè)面顯示了蘋果在硬件上的節(jié)流的決心。
蘋果在軟件方面的節(jié)流更是不遺余力,這也是蘋果相比于 Windows、Android 軟硬結(jié)合的優(yōu)勢。
決定手機(jī)待機(jī)時(shí)長的其中一個最重要的因素就是對后臺任務(wù)的處理與限制
最基本來說,作為一臺智能手機(jī),iPhone 在一開始就不提供后臺任務(wù),甚至系統(tǒng)演化至今,iPhone 的后臺任務(wù)都不是桌面系統(tǒng)嚴(yán)格意義上的多任務(wù),在 iOS 7 之前,蘋果只對音樂、導(dǎo)航等場景提供完整的后臺服務(wù)(以至于像優(yōu)酷之類的后臺視頻下載任務(wù),都會偷偷地在背后放一段靜音的音樂);在 iOS 7以后,對應(yīng)用程序來說,才有了一定的后臺任務(wù)空間(例如在后臺做少量的計(jì)算、下載少量的數(shù)據(jù)),而從系統(tǒng)層面看,為了保證在這些后臺任務(wù)下,系統(tǒng)依然能夠節(jié)省電量,蘋果在系統(tǒng)層面也做了十分細(xì)節(jié)的優(yōu)化,例如:
在, iOS 7 之前,如果你還有部分未完成的任務(wù),iOS 系統(tǒng)會在你完成之前其實(shí)還是屬于活躍狀態(tài),但是在 iOS 7以后,iPhone 能在已經(jīng)被其他工作喚醒的情況下,再開始本應(yīng)完成的任務(wù);就例如說你把一個 App 關(guān)閉了,但是你還得計(jì)算一些數(shù)據(jù),這些計(jì)算在你鎖閉 iPhone 不久就會被終止,但是如果你收到了一封郵件推送,郵件推送把系統(tǒng)給激活以后,你的這個計(jì)算任務(wù)又會隨著系統(tǒng)的激活而激活,從而讓任務(wù)有規(guī)劃地集中執(zhí)行。
還有一個例子就是蘋果的推送機(jī)制(APNS)。蘋果在開放開發(fā) API 的伊始就為應(yīng)用提供了 APNS 的推送機(jī)制,讓所有的應(yīng)用共用一個推送的通道,既節(jié)省了在待機(jī)時(shí)間內(nèi),CPU的損耗與網(wǎng)絡(luò)交互,也提高了推送的穩(wěn)定性與及時(shí)性(推送消息即使是在 GPRS 網(wǎng)絡(luò)狀況下也能穩(wěn)定到達(dá));而彼時(shí)的 Android 推送開發(fā),還需要每個應(yīng)用起一個后臺進(jìn)程去監(jiān)聽推送消息,即使后來無論是 Google 還是百度、騰訊都提供了相對來說統(tǒng)一的推送接口,但是 Android 的后臺依舊有很多各種各樣的進(jìn)程在一直計(jì)算、監(jiān)聽網(wǎng)絡(luò)。
這類省電技術(shù)在 OS X 上也有類似應(yīng)用。2013 年的 WWDC 在 OS X Mavericks 上大大地提高了 Macbook 的續(xù)航時(shí)間,主要有技術(shù)有三點(diǎn):首先,是內(nèi)存壓縮技術(shù),OS X 會把最不常用的內(nèi)存壓縮到只有平常一半大小,但是在用戶請求的時(shí)候又釋放出來,這也是為何即使 Macbook Air 只有 4GB 內(nèi)存,操作體驗(yàn)也依然流暢。其次是 應(yīng)用睡眠(App Nap),蘋果將窗口不在前臺展示的應(yīng)用完全暫停,其實(shí)是把 iOS 的單頁面應(yīng)用特性移植到了 OS X 上。之前的 Safari 即使是在后臺,也有 15% 的 CPU 占用率,所以這項(xiàng)功能對與節(jié)能還是十分可觀的。最后,與 iOS 類似,OS X 加入了一個叫時(shí)間合并的技術(shù)(Timer Coalescing),平是,許多應(yīng)用與后臺進(jìn)程都在用不同的定時(shí)器在觸發(fā)功能,而項(xiàng)技術(shù)則是剛好吧所有的任務(wù)同時(shí)執(zhí)行,如圖:
在增加設(shè)備續(xù)航時(shí)間方面,所以其實(shí)蘋果在這方面可謂為用戶操碎了心。相對于 Android 很多最后的結(jié)果其實(shí)可能只是產(chǎn)品定義的不同導(dǎo)致的兩個方向不一樣,就譬如是否允許后臺進(jìn)程這樣的技術(shù)決策,Google 肯定考慮更多的是技術(shù)能實(shí)現(xiàn)的完整度,而蘋果考量的更多的是用戶體驗(yàn),整體的孰優(yōu)孰劣其實(shí)并無意義,有意義的是什么呢?是像高中老師教導(dǎo)的那樣:要揣摩出題人的意圖。
作者新浪微博:李樂佳
雷峰網(wǎng)特約稿件,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。