android頁面卡頓

2021-07-14 15:14:27 字數 829 閱讀 6937

安卓手機應用中介面切換卡頓和滑動卡頓的區別是什麼,請從專業角度解釋?或者給出乙個開發者需要注意事項?

於是直接貼我的答案……

不過需要注意的是,我舉的例子並不是完備的。

而且答題時間有限,而我打字有點慢..所以如果有錯也別打我oaq

另外…本答案基本基於 google 的 android開發指導。

在android 中卡頓是因為 在ui執行緒上,進行了一次超過16ms(1s/60fps)的操作,例如寫入了大量檔案等,導致gpu繪圖時無法拉取更新的影象資料。

介面切換卡頓:

原因1:由於layout的層級過深,導致findviewbyid操作耗時過長。

解決方案1:使用 hierarchy viewer 工具,找出layout 的效能瓶頸。

原因2:部分資訊,例如 進度條等 可以在需要時載入。

解決方案2:使用 viewstub 便可做到這一點

原因3:在oncreate() onstart()與onresume()方法中,進行了過多操作。

解決方案3:將耗時操作放在後台執行緒當中完成。

原因4:部分操作必須進行後,才能繼續更新頁面

解決方案4:應該放在後台執行緒中處理,在ui上顯示進度條。

螢幕滑動卡頓:

原因1:在ui執行緒上進行了大量耗時操作,例如 大量運算、執行磁碟讀寫、網路讀寫或是 sql 操作。

解決方案1:使用後台執行緒來進行這些操作,ui執行緒應當專注ui繪畫。

原因2:滑動時可能經常呼叫 findviewbyid() ,這會消耗較多cpu資源。

解決方案2:使用 view holder 來優化滑動效能。

原因3:繪製了被覆蓋的檢視。

android 卡頓分析

android出現使用不流暢,卡頓及anr,主要原因有三個 1 cpu使用過高 2 系統記憶體使用過高 strictmode有兩個檢測策略 執行緒檢測策略 threadpolicy 和虛擬機器策略 vmpolicy threadpolicy檢測 自定義的耗時操作,磁碟讀寫,網路請求 strictmo...

頁面卡頓的優化 圓角

今天產品經理告訴我 誒,那個誰,這個介面很卡誒!你看看什麼情況。於是我掏出了instrument裡的core animation看看fps,發現滑動的時候fps特別低orz!產生卡頓的原因 首先,查閱資料看下為什麼會產生卡頓的原因。在 ios 系統中,影象內容展示到螢幕的過程需要 cpu 和 gpu...

android 滑動卡頓問題彙總

布局巢狀 太依賴weight 使用多層weight布局等可能會引起應用的卡頓。這個是主要的原因,好多次遇到卡頓都是布局出了問題。現在手機的運算速率都比較高,所以可以優先考慮是不是布局的問題 布局巢狀還會引起其他錯誤。布局盡量簡潔。原因一 滑動的時候需要預載入資料導致ui卡頓 原因二 在onpages...