為確保應用程式能順暢運作,應設法達到 60fps (一個影格 16 毫秒)。如果應用程式未達規定的影格轉譯時間,系統會強制略過影格,而使用者會在應用程式感覺到延遲。這種因缺少影格導致的不流暢互動稱為「卡頓」。如要進一步瞭解這項體驗,請參閱轉譯速度緩慢。
緩慢影格、凍結影格與 ANR 之間的關係
緩慢影格、凍結影格和 ANR 都是應用程式可能會遇到的各種卡頓形式。請參閱下表瞭解差異。
緩慢影格 | 凍結影格 | ANR | |
---|---|---|---|
轉譯時間 | 介於 16 和 700 毫秒之間 | 介於 700 毫秒和 5 秒之間 | 大於 5 秒 |
可見的使用者影響區域 |
|
|
|
分別追蹤緩慢影格和凍結影格
如果應用程式正在啟動,或是要轉換至其他畫面,由於應用程式必須加載檢視畫面、設定畫面的版面配置,並從頭開始執行初始繪圖,因此初始頁框繪圖的所需時間超過 16 毫秒是正常的。
確定優先順序並解決卡頓的最佳做法
在應用程式中嘗試解決卡頓時,請牢記下列最佳做法:
- 找出並解決最容易重現的卡頓。
- 優先處理 ANR。緩慢影格或凍結影格可能導致應用程式延遲,但 ANR 會導致應用程式停止運作。
- 轉譯速度緩慢很難重現,但您可以先解決 700 毫秒的凍結影格問題。應用程式啟動或變更畫面時,這種情況最常見。