性能優(yōu)化

要讓用戶體驗(yàn)好至少要做到以下幾點(diǎn):

一.不卡頓(自定義UI在invalidate繪制處理時間過長(遵循每幀16s),動畫過復(fù)雜,界面布局層級過度繪制,接收數(shù)據(jù)過大,cpu處理不過來或者在主線程處理,頻繁的GC導(dǎo)致線程停止繪制)

冷知識:1.當(dāng)我們的布局是用的FrameLayout的時候,我們可以把它改成merge,可以避免自己的幀布局和系統(tǒng)的ContentFrameLayout幀布局重疊造成重復(fù)計(jì)算(measure和layout),

2.提高顯示速度,使用ViewStub:當(dāng)加載的時候才會占用。不加載的時候就是隱藏的,僅僅占用位置

3.自定義View優(yōu)化。使用 canvas.clipRect()來幫助系統(tǒng)識別那些可見的區(qū)域,只有在這個區(qū)域內(nèi)才會被繪制。也是避免過度繪制.

4.了解冷啟動和熱啟動的區(qū)別

二.不閃退(ARN,主要類型按鍵或觸摸事件在特定時間內(nèi)無響應(yīng)=主線程阻塞5s,廣播阻塞10s,服務(wù)20s)

三.省電省流量

四.包體積小

五.加載數(shù)據(jù)的次數(shù)盡量少

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容