Android 應用程序 降低耗電量的一些思路

 

1. 由頭
        客戶這邊最高層說我們的產品太耗電,要我們解決耗電問題。

 

2. 思路
        首先要確定是否耗電,用ZDbox這款軟件,能測量Android手機內各個應用的耗電情況。

        看看測試結果,比較一下同類型不同應用,確定是否耗電明顯高於別人。

         如果是耗電明顯高於別人,先用SystemTunerPro觀察一下後臺起瞭什麼服務,一般來說後臺服務越多,耗電量越大。

         還可以Carat來評估耗電量構成,主動發現Bug。

 

3. 經驗
       Android的大耗電量一般由以下四個構成

        a. 頻繁的GC,不一定是full GC。 頻繁的full GC的話,應用會很卡,一般來說是頻繁的young gen GC。

        b. 開GPS,這玩藝尤其耗電

        c. 網絡連接,尤其是後臺開一堆服務,隔幾分鐘發起一次網絡連接。

        d. 後臺服務的數量,開一堆莫名其妙的服務。自動更新一個, 數據庫更新一個, nofication一個。等等

   

        經過我測試,日本這邊的App普遍都比較耗電,原因出在後臺開瞭一堆服務,10幾個,亂七八糟,隔十幾分鐘就發起一次網絡連接。這是典型的小日本做產品的風格。

        沒有人拿主意,反正是層層外包,大傢都是打工的,沒人願意出頭整合產品架構。 廢話不說,多說無益。
作者:nanjingjiangbiao

發佈留言