Android UI卡頓面試知識小結

今天我們來學習下 Android 中 UI卡頓方面的知識,UI卡頓的原理、UI卡頓的原因分析、UI卡頓的優化。

一、UI卡頓的原理

1、Android系統每隔16ms發出VSYNC信號,觸發對UI進行渲染;

2、View的繪製幀數每秒保持60fps最佳,這要求每幀的繪製時間不超過16ms(1000/60),如果安卓不能在16ms內完成界面的渲染,那麼就會出現丟幀卡頓現象;

二、UI卡頓的原因分析

1、在UI線程中做輕微的耗時操作,導致UI線程卡頓;

2、佈局Layout過於複雜,無法在16ms內完成渲染;

3、同一時間動畫執行的次數過多,導致CPU和GPU負載過重;

4、View過度繪製,導致像素在同一幀的時間內被繪製多次,使CPU和GPU負載過重;

5、View頻繁的觸發measure、layout,導致measure、layout累計耗時過多和整個View頻繁的重新渲染;

6、頻繁的觸發GC操作導致線程暫停,導致暫時阻塞渲染操作;

7、冗餘資源及邏輯等導致加載和執行緩慢;

8、ANR;

三、UI卡頓的優化

1、佈局優化 :

  • 使用include、ViewStub、merge標籤;
  • 減少佈局的嵌套、去除冗餘的佈局;
  • 使用自定義View取代複雜的嵌套佈局,減少mesure、layout的耗時操作。

2、ListView優化

  • 複用convertView;
  • 滑動不加載圖片,更新UI;

3、背景和圖片優化

  • 減少不必要的背景設置;
  • 圖片壓縮處理顯示;

4、避免ANR

四、實踐

Android UI性能優化實戰 識別繪製中的性能問題

Android UI性能優化 檢測應用中的UI卡頓

參考資料:
http://blog.csdn.net/qq_30379689/article/details/73698192

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章