智能手機費電是不爭的事實,其中尤以安卓手機為甚,而根據金山手機獨霸安全中心對90萬款安卓應用軟件行為分析的結果顯示,軟件異常是安卓手機費電元兇。
長期以來,智能手機續航能力不足一直飽受用戶詬病,而手機電池電量大小也成為決定消費者選擇手機品牌的重要影響因素。
“在今天的安卓手機中,你用任何一款都會發現非常費電,大家經常指責手機廠商提供的電池(容量)不夠大,(但實際上)我們從原來做2000 mAh,不夠大就做2500 mAh,2500 mAh不夠就做3000mAh。”小米科技董事長雷軍在中國互聯網大會“2013中國互聯網高層年會”上與虎嗅網創始人李岷的對話中指出。
盡管手機的容量一直在不斷增大,但安卓手機費電的情形卻并未得到改善,隨身攜帶備用電池已經成為很多安卓手機用戶的習慣。
軟件異常是費電元兇
智能手機屏幕大、功能多且使用頻繁,對電量的需求肯定大,但許多消費者反映自己的智能手機還沒怎么使用,卻連一天都撐不到就沒電關機了。
根據金山手機毒霸安全中心發布的《90萬款App耗電分析報告》顯示,軟件異常是安卓費電元兇,而最主要的三種耗電行為分別是頻繁喚醒CPU、長期持鎖(喚醒鎖)、非必要的后臺程序自啟動。
“大量的安卓軟件出于某些目的,會在手機后臺異常運行,這些應用程序的行為大大消耗了安卓手機的續航能力。”金山網絡安全專家李鐵軍表示,“如果按照一部手機夜間待機8小時算,這些過度耗電的應用軟件會消耗待機電量的10.64‰其中頻繁喚醒系統的應用軟件比例占9‰長期霸占喚醒鎖和設備資源的占11‰”
分析結果發現,APP自身原因造成安卓系統異常耗電的比例高達61.04%,其中90%的軟件自啟動和該軟件給用戶提供的功能沒有任何關系,而正是這些行為,造成了應用軟件嚴重耗電的現象。
李鐵軍指出,耗電和應用軟件的行為有關,一些軟件頻繁自啟動只是為了訪問特定網站、下載廣告資源、獲取最新的通知消息、選擇恰當的時機在用戶手機上彈出消息、檢查有沒有更新的版本、提高軟件的活躍度等等。因此,耗電的應用軟件往往也消耗過多的網絡流量,同時,惡意竊取用戶手機隱私信息的軟件同樣會過度耗電和消耗流量。
相較蘋果手機而言,安卓手機更為費電。據了解,iPhone5的電池容量只有1440mAh,可以正常使用一天,而安卓手機普遍電池容量在2000mAh、甚至3000mAh以上,它的使用時間卻并沒有比iPhone長多少。
“問題在于iOS是一個管制非常嚴的系統,整個生態系統比較健康,而Android是個開放的系統,有的App經常搗亂,比如說常駐后臺啟動,同時屏幕彈出懸浮窗口,再加偷流量,順便彈廣告。我相信你們的手機或多或少都有這樣的特點。”雷軍表示。
在iPhone或iPad上,蘋果提供了統一的通知中心。應用軟件不能直接向用戶手機推送消息,必須使用蘋果統一的通知中心。iPhone或iPad后臺有個服務程序接收蘋果服務器的消息通知,消息通知再去通知相應的APP去接收消息內容。這樣,在用戶的iphone手機或ipad上,一個后臺服務保持和蘋果服務器的連接,就能完成任務。用戶端的資源占用做到了最小,其特點之一,就是省電。
而安卓系統就不一樣,由于本身是完全開放的,手機或平板制造商可以對安卓系統自行改造。還因為某些特別的原因,國內安卓手機很少使用Google的消息推送機制。于是,各個安卓應用開發者便自行其是,想怎么連接就怎么連接,想隔多久連接就隔多久連接,甚至有些應用每秒鐘連接一次,開發者根本沒有為用戶的電池續航能力考慮。
李鐵軍說:“安卓手機后臺喚醒就好比一個馬蜂窩,有的程序剛休眠,就可能被別的程序喚醒。只觀察一個程序的電力消耗會覺得這沒什么大不了,但在安卓系統環境里,這些程序會相互作用,頻繁喚醒CPU,使系統幾無休眠時間。這就使得安卓手機屏幕關閉時的電力消耗比iPhone、iPad高許多。”
APP行為管理是核心
目前,谷歌官方并沒有對應用程序的電力消耗制定具體的規則,因此,許多開發者、運營商在沒有約束的情況下肆意侵犯用戶的權利。針對這些現象,一部分手機廠商會考慮去限制應用程序的自啟動情況,比如MIUI V5就可以限制應用程序自啟動。
“我在做系統的時候。就在想我們的系統能不能安靜一點,能不能不要不停地吆喝。用過小米手機的應該都知道,其實小米的這些系統沒有任何一個是會不停彈出通知的。”雷軍說道,“小米對整個手機上的生態系統非常的在意,我希望小米生態在Android開放生態的大范疇里面,是一個比較約束的、比較安靜的、用戶體驗比較好的一個生態。”
同時,有些安全軟件也會去限制應用程序自啟動、查殺應用程序進程,以圖達到省電省流量的目的,但不少用戶發現,在查殺掉一些進程之后不久,這些程序又自動啟動了。
“原因在于這些軟件也不能算是惡意軟件,除了比較耗電,耗流量之外,它們純粹是正常的軟件,也為用戶提供他們所需的服務,只是由于開發者只顧自己利益而沒有考慮到用戶才會出現這些情況。”李鐵軍說道,“同時,安卓應用程序有太多機會重新啟動,當手機信號發生變化、點亮屏幕、來電話、來短信、同步、加減音量等等都會觸發程序啟動。僅僅殺掉應用軟件進程,并不能治本。”
安卓系統里,有自啟動能力的應用軟件非常之多,可能數量比Windows應用軟件自啟動還要多。這使得安卓系統太像Windows,每次開機都會有一批應用程序啟動,拖慢系統速度、消耗手機內存、耗費手機電量,同時由于這些自啟動的軟件啟動的目的幾乎都是連網獲取消息,又會浪費手機流量。
在李鐵軍看來,要想解決安卓軟件過度耗電的問題,必須從管理APP行為下手,而非簡單查殺病毒、進程就能解決的。而如何管理APP又可以同時從三個方面入手:
一是,管理APP的自由喚醒周期,由金山手機毒霸統一喚醒規則。將頻繁喚醒系統的周期延長,變雜亂無章的馬蜂窩式喚醒系統為統一喚醒。準時休眠、準時喚醒,最大限度的給CPU和硬件設備休眠時間,從而大幅減少不必要的電量消耗。
二是,當應用程序由于BUG原因不釋放喚醒鎖的,金山手機毒霸強行釋放。對不釋放設備資源的,程序退出后強行釋放。就像在Windows系統里,準確找到占用CPU100%的進程。將其結束。
三是,管理非必要的應用程序自啟動,將與正常功能完全無關的軟件自啟動徹底關閉。
“我們即將推出的手機毒霸V3.0就主打耗電行為管理,深度管理APP在后臺的異常運行,讓APP不良行為無處遁形,為安卓手機真正省電。”李鐵軍表示。