一亏狰、Android屏幕刷新機制
1目溉、三級緩存
image.png
image.png
- Activity
- View
- Window (PhoneWindow)
Activity本身是沒辦法處理顯示什么控件(view)的谦纱,是通過PhoneWindow進行顯示的 - Choreographer:協(xié)調(diào)動畫(animations)翎冲、輸入(input)绊率、繪制(drawing)三個UI相關(guān)的操作
- ViewRootImpl
- CPU
- GPU
- VSYNC:提升了渲染任務(wù)的優(yōu)先級谨敛,優(yōu)化了渲染性能,可有效的減少了丟幀滤否、卡頓等問題脸狸。
- 三重緩存機制:利用 CPU/GPU 的空閑等待時間提前準備好數(shù)據(jù),有效的提升了渲染性能
- 丟幀/卡頓:等到第二幀顯示的時候藐俺,只能使用上一幀的內(nèi)容顯示
- 同步屏障消息: 擋住普通消息來保證異步消息優(yōu)先處理的
2炊甲、surfaceflinger surface
二、頁面性能統(tǒng)計實現(xiàn)
指標
1欲芹、首次內(nèi)容渲染時間(FCP)
2卿啡、首次有效渲染時間(FMP)
3、可交互時間(TTI)
4菱父、應(yīng)用冷啟動時間
5颈娜、每幀處理時間
三、app應(yīng)該如何去優(yōu)化