Android 效能優化

2021-09-02 17:15:06 字數 1097 閱讀 7249

1 響應時間

響應步驟可以分為:使用者操作-邏輯處理-網路互動-頁面展示。

邏輯處理:

清理程式邏輯,減少不必要的操作,不分配不必要的記憶體。

1)不要在for迴圈中宣告臨時變數和寫try-catch。

2)合適使用資料型別,比如:stringbuilder或stringbuffer、少用enum、少用父類宣告(list、map)

3) 如果需要頻繁的new theard,使用執行緒池。

4) 正確使用單例模式

5)多用常量

6)使用策略模式進行解耦

網路互動:使用快取  1)使用執行緒池     2)快取   3)訊息快取,使用obtainmessage實現訊息復用         4)listview快取     5)網路快取    6)layout快取

控制最大請求量,及時取消請求,過濾重複的請求,設定超時,設定優先順序。

頁面展示:使用hierarchy viewer 和 lint 分析布局

1) 盡可能的減少布局層次, 使用、、。  ui繪製流程:measure - layout - draw;measure和layout都需要迴圈所有的子控制項。所以子控制項越多,消耗時間越長。

2)viewpager  同時快取pager數最好為最小數3,過多就會卡。 每個pager在使用時再載入網路和資料庫的資料,不要預載入。

3) 使用relativelayout 代替 linearlayout

4)避免過度繪製(overdraw)

5) 盡可能為所有解析度準備資源,減少硬體縮放,加快ui繪製速度

6) 使用lrucache 和disklrucache;使用網路+資料庫,每個activity和fragment設定乙個最小請求時間間隔。

2 記憶體

traceview 分析效能

1)  bitmap消耗記憶體,在比較大的時候,容易產生oom,需要使用bitmapfactory.options縮放。使用完之後,及時使用bitmap.recycle()及時**。

3 電量

措施:1)減少喚醒螢幕的次數和時間,使用wakelock時正確執行喚醒操作並根據設定關閉操作。

3)將多次網路請求打包為一次,可以避免過多次的網路請求產生的電量消耗。

Android效能優化

android效能優化 1.http用gzip壓縮,設定連線超時時間和響應超時時間 http請求按照業務需求,分為是否可以快取和不可快取,那麼在無網路的環境中,仍然通過快取的httpresponse瀏覽部分資料,實現離線閱讀。2.listview 效能優化 1 復用convertview 在geti...

Android效能優化

1.節制地使用service 如果應用程式當中需要使用service來執行後台任務的話,請一定要注意只有當任務正在執行的時候才應該讓service執行起來。另外,當任務執行完之後去停止service的時候,要小心service停止失敗導致記憶體洩露的情況 2.當介面不可見時釋放記憶體 當使用者開啟另...

Android效能優化

本篇主要是對 google推出的效能優化典範 進行乙個通篇的整理 主要在於一些具體的優化技巧 至於60fps 掉幀 gc 記憶體抖動 閾值 等等這些效能術語的概念裡面不做多概括,請自行查閱 本篇從以下幾點延伸擴充套件 systrace systrace 在android ddms 裡自帶,可以用來跟...