文章陳述了手機發(fā)展趨勢及耗電特性,集中討論了時(shí)下最為關(guān)心的智能手機耗電問(wèn)題,并介紹了測量手機軟件耗電量的兩種方法。此外還解釋了為何運營(yíng)商此前會(huì )提出收取微信的費用,心跳機制是什么。 美國著(zhù)名手機公司Palm的CEO JonRubinstein曾經(jīng)說(shuō)過(guò):“手機未來(lái)的發(fā)展取決于兩個(gè)因數,一是手機的數據傳輸速度;二就是手機待機時(shí)長(cháng)! 為什么手機待機時(shí)長(cháng)如此重要呢? 現在,手機上網(wǎng)速度已經(jīng)有很大的提升,而且還在馬不停蹄的發(fā)展4G,5G。4G網(wǎng)絡(luò )可以將手機的上網(wǎng)速度提高到100Mbps以上,簡(jiǎn)單的說(shuō),下載一首歌曲不用1秒鐘,下載一部電影不到1分鐘,F在正在制定和規劃的5G網(wǎng)絡(luò ),通過(guò)手機上網(wǎng)的速度甚至可以達到1Gbps。所以可以想象,在數據速度不再受到限制的情況下,“智能手機”結合各種應用軟件以及“云”計算,未來(lái)的手機將成為真正的“移動(dòng)終端”。手機身份證,手機銀行,手機錢(qián)包、手機交通卡,手機導航,手機智能駕駛……,所有的事情都使用這個(gè)“手機”通過(guò)網(wǎng)絡(luò )完成。 當“手機”已經(jīng)變成了你時(shí)時(shí)刻刻都離不開(kāi)“終端”,手機沒(méi)電是不是非常致命? 導致手機的待機時(shí)間短的原因比較復雜,包括手機待機狀態(tài)功耗,通話(huà)時(shí)間,上網(wǎng)時(shí)間,無(wú)線(xiàn)信號強弱,GPS導航,顯示屏亮度,各種軟件后臺運行,電池容量大小等都會(huì )影響待機時(shí)間。通常我們最關(guān)心的是手機從上一次充電到手機自動(dòng)關(guān)機或提示電量不足的時(shí)間長(cháng)短。 要全面分析和優(yōu)化手機的待機時(shí)長(cháng),手機、電池、充電管理一個(gè)都不能少,暫且讓我們稱(chēng)它們是“手機三件套”吧。那就讓我們從手機的耗電特性開(kāi)始! 手機發(fā)展趨勢和耗電特性 智能手機越來(lái)越普及,硬件處理能力越來(lái)越強,支持的軟件應用越來(lái)越多。 我們不免也有另一種擔心,現在的智能手機的待機時(shí)間已經(jīng)是一個(gè)短板,未來(lái)的智能手機待機時(shí)間變得更加短呢? 從理論上來(lái)說(shuō),更大的顯示屏、更多核的處理器、更多樣化的無(wú)線(xiàn)連接技術(shù)等肯定會(huì )增加手機的耗電量。同時(shí),手機的功能也越來(lái)越多,手機使用的頻率也會(huì )越來(lái)越頻繁,因此對手機的耗電性能進(jìn)行優(yōu)化和管理也變得更加重要。譬如在不操作手機時(shí)更快的進(jìn)入休眠,采用脈沖形式發(fā)射無(wú)線(xiàn)信號,非連續接收及非連續發(fā)射等。 為了優(yōu)化和改善手機的耗電,就必須先了解手機耗電的特征或發(fā)現手機存在哪些耗電性能上的缺陷,做到有的放矢。 手機耗電的特征可以歸納為以下幾個(gè)方面: 1.電流幅度波動(dòng)大: a) 關(guān)機漏電流:~10 to 100nA b) 休眠電流: ~100 μA to 10mA c) 待機電流: ~5 to 50 mA d) 接收狀態(tài): ~100 to 300 mA (脈沖) e) 發(fā)射狀態(tài): ~1 to 2.5 A(脈沖) f) 應用軟件運行:~100mA to 2A 2.電流變化的速度快、動(dòng)態(tài)大: 上圖是GPRS手機發(fā)射Tx和接收Rx的電流波形: a) 發(fā)射TX電流脈沖為0.58 ms,電流 2.02A; b) 接收RX 電流脈沖為1.2ms,電流143 mA c) 連續發(fā)射Tx電流脈沖間隔為 4.6 ms; d) 空閑Idle狀態(tài)的電流為1mA。 3.電流是多種功能綜合,難以區分是誰(shuí)引起的電流: 上圖是手機從Idle到顯示屏點(diǎn)亮,再到撥號打電話(huà)過(guò)程的電流波形;在顯示打開(kāi)且手機發(fā)射的位置,電流時(shí)二者疊加的組合電流。 4.通常需要長(cháng)時(shí)間的對電流進(jìn)行跟蹤和觀(guān)察 如上圖需要測試手機通話(huà)時(shí)長(cháng),要持續4個(gè)小時(shí)連續記錄電流、電壓的變化,分析通話(huà)過(guò)程消耗的電量(843mAh),而且還需要準確測量脈沖電流,往往變得非常困難。 應用軟件在手機上的耗電 運營(yíng)商為什么說(shuō)提出收取微信的費用? 一般Android手機每天有超過(guò)15-20%的電量被消耗在發(fā)送過(guò)度頻繁的心跳上 微信,你一定不陌生吧?網(wǎng)上是這樣介紹微信的: 微信是一種更快速的即時(shí)通訊工具,具有零資費、跨平臺溝通、顯示實(shí)時(shí)輸入狀態(tài)等功能,與傳統的短信溝通方式相比,更靈活、智能,且節省資費。針對圖片、語(yǔ)音和視頻優(yōu)化,1M可發(fā)約1000條文字信息,1000秒語(yǔ)音信息,約1分鐘視頻信息;微信有著(zhù)精心設計過(guò)的通信協(xié)議,在后臺運行時(shí)僅消耗極少流量,一個(gè)月消耗約1.7M流量。 此前,曾冒出來(lái)一條新聞?wù)f(shuō)微信要開(kāi)始收費。大家會(huì )好奇——為什么要收費?誰(shuí)要收費?收的是什么費?下面我們來(lái)說(shuō)說(shuō)這個(gè)事兒。 微信是通過(guò)數據業(yè)務(wù)將文字、圖片、語(yǔ)音或視頻等內容傳輸出去的,因此,只要通過(guò)WIFI或者數據包月就可以實(shí)現完全的免費。因此,只要軟件開(kāi)發(fā)商如騰訊不收取軟件費用,理論上用戶(hù)就沒(méi)有理由支付任何的費用。 然而,移動(dòng)通信網(wǎng)絡(luò )中由于用戶(hù)眾多、資源稀缺,每個(gè)用戶(hù)都是動(dòng)態(tài)占用資源,比如IP地址以及無(wú)線(xiàn)信道。為了實(shí)現即時(shí)通訊,微信軟件采用向移動(dòng)通訊網(wǎng)絡(luò )周期性的發(fā)送資源分配請求,即使后臺運行,也保持在線(xiàn)狀態(tài)。這種機制也稱(chēng)作為“心跳機制”。 最早的心跳機制用于服務(wù)器的安全備份機制,是為了防止服務(wù)器死機,而在服務(wù)器之間采用專(zhuān)用的端口和線(xiàn)路,周期性傳送簡(jiǎn)短的信息,心跳就是形象的比喻。一旦收不到對方的心跳信息,服務(wù)器可以接管對方的業(yè)務(wù),避免業(yè)務(wù)的停滯。為了業(yè)務(wù)的順暢進(jìn)行,服務(wù)器發(fā)送的心跳信息可以非常頻密。 這種機制被手機上的互聯(lián)網(wǎng)應用所借用,無(wú)論是Android的原生應用,還是QQ、微博和微信,都采用了這種心跳機制,也就是終端定時(shí)向應用服務(wù)器發(fā)送簡(jiǎn)短的信息。諸如舊版QQ的心跳周期為30秒,新版QQ為3分鐘,微信為5分鐘,Google原生應用為28分鐘左右。而手機每次發(fā)送心跳包,都需要移動(dòng)通信網(wǎng)絡(luò )為用戶(hù)分配資源,分配的過(guò)程體現在信令的發(fā)送和接收上。一次心跳包的發(fā)送過(guò)程,牽涉的信令多達幾十條。這些網(wǎng)絡(luò )資源分配的信令信息運營(yíng)商是不能進(jìn)行收費的,就好比手機撥電話(huà)沒(méi)有接通的時(shí)候,也是很多信令信息的交互而用戶(hù)不用付費。 中國移動(dòng)研究院院長(cháng)黃曉慶在接受媒體采訪(fǎng)時(shí),道出了微信業(yè)務(wù)給運營(yíng)商帶來(lái)的壓力,稱(chēng)微信僅為中國移動(dòng)帶了10%的移動(dòng)數據流量,卻占用其60%的信令資源。這也被外界理解為向微信收費的直接原因。 現在我們終于明白了,中國移動(dòng)等運營(yíng)商為什么說(shuō)要收取微信的費用?收發(fā)微信的內容如圖片、語(yǔ)音或視頻等的數據流量費用,這個(gè)已經(jīng)收取了(只是算在我們包月數據流量套餐里面),還要收取微信的“心跳”費用! 其實(shí)運營(yíng)商也不想一想,沒(méi)有這種“心跳”,哪里后面的數據流量的收費? 當然,微信等創(chuàng )新的交流軟件平臺,的確是影響了運營(yíng)商的短信、彩信甚至通話(huà)等收入,但這是歷史發(fā)展的趨勢,誰(shuí)也無(wú)法阻擋。 不管收不收費,這種“心跳”還意味著(zhù)每天你的手機將被從待機省電狀態(tài)喚醒近300次,每次相當于打一個(gè)幾秒鐘的電話(huà)。粗略測算,一般的Android手機每天有超過(guò)15-20%的電量被消耗在發(fā)送過(guò)度頻繁的心跳上。 為了延長(cháng)手機的待機時(shí)間,建議如果長(cháng)時(shí)間不用的話(huà),還是連后臺運行也關(guān)閉吧。 應用軟件在手機上的耗電能測量嗎? 相信大家對某運營(yíng)商投放的這段電視廣告應該再熟悉不過(guò)了——“xxx手機已經(jīng)有10萬(wàn)個(gè)應用程序”!與之相應的是網(wǎng)絡(luò )上熱議的話(huà)題——5G技術(shù)最高理論下載速率可10Gbps。 這兩個(gè)信息提示我們“移動(dòng)互聯(lián)時(shí)代”時(shí)代真的要來(lái)了…… “移動(dòng)互聯(lián)時(shí)代”的手機就更加有理由成為真正意義上的“移動(dòng)終端”,在未來(lái)通信速度不再受限制的情況下,通過(guò)安裝什么樣的應用軟件,手機就可以變成什么樣的終端。雖然在3G時(shí)代,通信速率還遠沒(méi)有達到帶寬不受限制,但現在的“智能手機”走在“移動(dòng)終端”蛻變的路上,已經(jīng)有數以萬(wàn)計的應用軟件可以下載安裝,使手機變成各種功能獨特的“終端”。 手機之所以區別于電腦或其他通訊工具,最突出的優(yōu)勢就在于其移動(dòng)性、便攜性。而采用鋰電池供電又是其移動(dòng)性、便攜性的基礎,可以說(shuō)鋰電池的出現成就了手機,但鋰電池的容量瓶頸已經(jīng)讓手機待機時(shí)間短成為一個(gè)突出問(wèn)題。 其實(shí),鋰電池的容量已經(jīng)出當初的數百mAh提高到了現在的數千mAh,待機時(shí)間變得越來(lái)越短,根本原因在手機的耗電比原來(lái)大了更多,包括手機更耗電的硬件——之前的博文“手機發(fā)展趨勢和耗電特性”已經(jīng)做過(guò)相關(guān)的介紹。 另一個(gè)突出的變化就是手機需要安裝和運行更多的應該軟件,有些運用軟件運行時(shí)需要消耗大量的電能,如前面提到的微信,QQ,微博等。 應用軟件需要消耗電量,大家都容易理解,但究竟哪個(gè)軟件耗電大,哪個(gè)耗電量小,如何定量的評估呢?估計這個(gè)問(wèn)題一直困擾著(zhù)很多軟件開(kāi)發(fā)者。相比硬件的耗電非常的直觀(guān),如顯示屏的亮度等級耗電是非常容易對比和測量。軟件的耗電比較抽象和難以測試,是因為軟件必須運行在手機硬件的基礎上,測量到的耗電量是軟件與手機的硬件綜合疊加的耗電總和。對于耗電來(lái)所我們無(wú)法認為的剔除硬件的耗電而單獨測試軟件的耗電。 所以,如何測試軟件的耗電?我建議軟件開(kāi)發(fā)者可以有以下兩種方法: 一、橫向對比法:分兩步測試,第一步測量手機硬件運行消耗的電量;第二步測試手機硬件和軟件運行綜合的耗電量。最后將兩次的耗電進(jìn)行對比,得出軟件消耗的電量大; 二、縱向對比法:同時(shí)進(jìn)行兩臺手機,其中一臺手機不運行軟件,另一臺手機運行軟件;分別獲得兩臺手機的耗電量,對比兩臺手機耗電量差異,得出軟件消耗的電量大小。 這兩種方法在測試上有一定的差異,很多應用軟件都是需要移動(dòng)網(wǎng)絡(luò )的支持,而手機接收的網(wǎng)絡(luò )信號時(shí)會(huì )隨時(shí)間變化的。 因此、第一種方法的誤差主要來(lái)源于手機在不同的基站網(wǎng)絡(luò )下工作狀態(tài)的變化。 第二種方法的差異則體現在兩臺手機本身硬件消耗的電量可能存在差異,所以需要盡可能使用同一型號,同一批次的手機。而且需要使用多通道的耗電測試儀表,如之前提到的安捷倫N6705B可以最多同時(shí)支持4臺手機并行測試。 博文來(lái)源:baohua的博客EDNC BLOG |