Android效能優化

2021-08-14 09:22:00 字數 1019 閱讀 2711

android效能優化主要包括布局優化、繪製優化、記憶體洩露優化、響應速度優化、listview優化、bitmap優化、執行緒優化以及一些優化建議.

減少布局檔案的層級(測量/布局/繪製的時間減少):可以使用relativelayout來減少巢狀,從而達到減少層級的目的,另外在相同層級的情況下使用linearlayout(相比於relativelayout更高效)

使用include標籤復用,merge標籤降低層級,viewstub來實現懶載入,另外補充乙個space可以用來佔位

主要是避免執行大量的操作.

不要建立新的區域性物件,因為ondraw可能會被頻繁呼叫,會在一瞬間產生大量的臨時物件,會導致占用過多記憶體,系統更加頻繁的gc,降低執行效率

不要做耗時的任務

其實記憶體洩露有很多種情況,但是書中列舉的比較少

靜態變數導致的記憶體洩露(比如靜態的context,靜態的view)

單例模式持有activity

屬性動畫(repeatcount為無限模式)

listview使用viewholder模式,bitmap在12章有講,這裡不重複.

主要是採用執行緒池(11章有講)

避免存在大量的thread

重用thread,避免執行緒建立和銷毀所帶來的開銷

執行緒池還能控制最大併發數,避免大量執行緒因互相搶占系統資源從而導致阻塞

避免建立過多的物件

不要過多使用列舉(列舉占用的記憶體空間要比整型的大)

常量使用static final來修飾

使用一些android特有的資料結構,比如sparsearraypair等,它們都具有更好的效能(注:減少了自動裝箱和拆箱的消耗)

適當使用軟引用和弱引用

盡量採用靜態內部類(不會持有外部類的例項)

命名規範

**排版

給非常關鍵的**寫注釋

**要有層次性,可擴充套件

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 裡自帶,可以用來跟...