使用 Android Vitals 監控應用程式的技術性數據

透過 Android Vitals,您可以瞭解並改善應用程式的穩定性、效能、電池用量和其他事項。

選擇應用程式資料的存取方式

Android Vitals 有兩種使用途徑,分別是 Play 管理中心和 Play Developer Reporting API。

如果開發人員想將 Android Vitals 資料與其他資料集整合,或是將 Android Vitals 建構到自己的工作流程,不妨使用 Play Developer Reporting API,這樣就能以程式輔助方式存取 Android Vitals。如要進一步瞭解如何使用 API 存取 Android Vitals,請前往 Google Play Developer Reporting API 頁面

如要在 Play 管理中心尋找及查看應用程式的 Android Vitals 資料,請按照下列步驟操作:

  1. 開啟 Play 管理中心
  2. 選取應用程式。
  3. 在左選單中依序選取「品質」>「Android Vitals」>「總覽」
  4. 使用右上角的日期範圍選取器,選擇要查看的時間範圍資料。

重要事項:如果沒有可用資料,會導致您的應用程式在特定篩選條件下的資料點不足,無法為應用程式辨識任何問題。

查看總覽資訊主頁和詳細指標頁面

Android Vitals 核心指標

「總覽」頁面頂端會顯示應用程式的 Android Vitals 核心指標資料,這些成效指標會影響應用程式在 Google Play 中的可見度和排名。Android Vitals 核心指標包括:

  • ANR 發生率
  • 當機率
  • 部分 Wake Lock 停滯 (背景)
  • 喚醒次數過多

如果您的應用程式有任何需要處理的重大效能問題,例如指標超出不良行為門檻和效能資料有顯著變化 (即異常狀況) 等情況,您可以利用這個頁面快速找出應用程式可改善的部分。如要在偵測到重大 ANR、當機叢集或 Android Vitals 異動時收到電子郵件通知,請依序點選「設定」>「通知」,或點選「核心指標」部分 (依序點選「品質」>「Android Vitals」>「總覽」) 角落的「管理通知」

有時候,Android 10 以上裝置可能會比 Android 10 以下裝置提早收到資料。發生這種情況時,系統只會顯示可以使用 Android 10 以上裝置資料時的資料。

重要事項:為了提供最佳的使用者體驗,請找出應用程式的所有問題並加以修正,避免指標超過不良行為門檻。

瀏覽所有 Android Vitals 指標

在靠近「總覽」頁面中間的位置,您可以依資料類型查看所有 Android Vitals 指標的資料。如要篩選表格,請選擇您要查看的維度和時間範圍。

您可以針對個別指標,查看應用程式在當前和過往時間範圍中受影響的工作階段百分比。如果想知道您的應用程式和 Google Play 上其他應用程式的成效差別,您也可以查看您的應用程式和同類應用程式中位數之間的差距。

查看詳細指標

如需特定指標的詳細資料,請選取「查看詳細資訊」。系統將在下個畫面顯示下列資訊:

  • 在成效資料中找到的異常狀況
  • 不良行為門檻
  • 類別基準
  • 基準比較的詳細結果
    • 在頁面頂端附近的同類應用程式比較資訊卡中,選取「編輯同類群組」 即可編輯自訂同類群組。建立自訂同類群組之後,就能查看您的應用程式與 Google Play 上其他應用程式的比較數據。
  • 依照成果、裝置、Android 版本、基準或時距顯示的各項指標
    • 選取表格各列右側的向下箭頭,即可展開相關詳細資訊。
依不良行為篩選

「總覽」頁面頂端的部分指標可能會標示紅色錯誤圖示 ,代表該指標顯示的數字高於其他應用程式,這種情況又稱為不良行為。

如要查看您的應用程式有哪些 APK 包含不良行為,請在標有圖示的資訊卡上選取「查看詳細資訊」

資料類型和指標

以下資料擷取自使用者自動分享的使用狀況與診斷資料 (資料收錄範圍涵蓋部分的 Android 裝置與某些版本的 OS)。如要進一步瞭解 Android 使用者選擇分享資料的方式,請造訪帳戶說明中心

全部收合  全部展開

穩定性

ANR 發生率和多次 ANR 發生率

瞭解應用程式資料

「ANR 發生率」和「多次 ANR 發生率」頁面中的資料,與應用程式的「ANR 和當機次數」頁面中的資料類似。在「Android Vitals」頁面中,系統會將 ANR 資料與使用資料結合,產生正規化指標。

ANR 發生率詳細資訊

  • 受影響的工作階段數:使用者遇到至少一次 ANR 情形的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。舉例來說,如果有兩個使用者各自使用應用程式兩天,就會產生四個每日工作階段。
  • 未發生 ANR 情形的工作階段數:使用者未遇到任何 ANR 情形的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。
  • 工作階段數:大致記錄的工作階段數。
  • 不良行為門檻:如果您應用程式的出現率等於或大於系統顯示的門檻,代表該應用程式位於 Google Play 前 1,000 個熱門應用程式的最低 25% (根據安裝次數計算)。

多次 ANR 發生率詳細資訊

  • 受影響的工作階段數:使用者遇到至少兩次 ANR 情形的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。舉例來說,如果有兩個使用者各自使用應用程式兩天,就會產生四個每日工作階段。
  • 不受影響的工作階段數:使用者遇到 1 次或 1 次以下 ANR 的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。
  • 工作階段數:大致記錄的工作階段數。

修正問題

如果您應用程式的 ANR 次數過多,請造訪 Android 開發人員網站查看建議的解決方案。

當機率和多次當機率

瞭解應用程式資料

「當機率」和「多次當機率」頁面中的資料,與應用程式的「ANR 和當機次數」頁面中的資料類似。在「Android Vitals」頁面中,系統會將當機資料與使用資料結合,產生正規化指標。

當機率詳細資訊

  • 受影響的工作階段數:使用者遇到至少一次當機情形的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。舉例來說,如果有兩個使用者各自使用應用程式兩天,就會產生四個每日工作階段。
  • 未發生當機情形的工作階段數:使用者未遇到任何當機情形的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。
  • 工作階段數:大致記錄的工作階段數。
  • 不良行為門檻:如果您應用程式的出現率等於或大於系統顯示的門檻,代表該應用程式位於 Google Play 前 1,000 個熱門應用程式的最低 25% (根據安裝次數計算)。

多次當機率詳細資訊

  • 受影響的工作階段數:使用者遇到至少兩次當機情形的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。舉例來說,如果有兩個使用者各自使用應用程式兩天,就會產生四個每日工作階段。
  • 不受影響的工作階段數:使用者遇到 1 次當機或無當機情形的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。
  • 工作階段數:大致記錄的工作階段數。

修正問題

如果您應用程式的當機次數過多,請造訪 Android 開發人員網站查看建議的解決方案。

啟動和載入時間

啟動時間 (顯示啟動畫面所需時間)

「啟動時間」頁面會顯示應用程式從這三種系統狀態下緩慢啟動的詳細資訊。啟動時間是指從使用者啟動應用程式到畫面顯示第一個影格所需要的時間,又稱為「顯示啟動畫面所需時間」。

即使經過這段時間,應用程式仍可能還沒準備好與使用者開始互動,例如應用程式還有其他載入畫面時,就可能發生這樣的情況。

關於資料收集作業的詳細說明

  • 系統只會在使用者觸發活動時記錄啟動時間。
    • 範例:鍵盤應用程式的啟動時間等於隨附應用程式的啟動時間。
  • 如果應用程式在一天內多次從同一種系統狀態下啟動,系統會記錄當天最長的啟動時間。
  • 當應用程式的第一個影格完全載入時,無論使用者是否與該畫面互動,系統都會記錄應用程式的啟動時間。
    • 範例:如果應用程式開啟時會顯示啟動畫面,啟動時間就等於顯示啟動畫面所用的時間。

Vital 詳細資料

  • 受影響的工作階段數:使用者在個別系統狀態下遇到啟動時間緩慢問題的工作階段百分比:
    • 冷啟動時間緩慢:5 秒以上
    • 暖啟動時間緩慢:2 秒以上
    • 熱啟動時間緩慢:1 秒以上
  • 工作階段數:大致記錄的工作階段數。
  • 第 90 個/第 99 個百分位數:10%/1% 的每日工作階段中,使用者在您的應用程式內遇到啟動時間緩慢問題。

修正問題

如果您應用程式的啟動時間緩慢次數過多,請造訪 Android 開發人員網站查看建議的解決方案。

轉譯

緩慢影格的數量過多

瞭解應用程式資料

「緩慢影格的數量過多」頁面會針對使用者遇到超過 50% 影格未在裝置繪圖期限前輸出的情形,提供每日工作階段百分比的詳細資訊。使用者與應用程式互動的執行速度應為每秒 60 個影格,而且不應出現掉格或延遲的情況。

關於資料收集作業的詳細說明

Google 會在應用程式透過 UI 工具包架構轉譯影格時收集各個影格的轉譯時間,但不會收集直接利用 OpenGL 或 Vulkan 轉譯影格的時間。

資訊主頁顯示的資料

選取其中一列即可查看百分位數分析資料。

  • 受影響的工作階段數:使用者遇到超過 50% 影格轉譯時間超出 16 毫秒的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。舉例來說,如果有兩個使用者各自使用應用程式兩天,就會產生四個每日工作階段。
  • 工作階段數:大致記錄的工作階段數。
  • 第 90 個/第 99 個百分位數:共有 90%/99% 影格的轉譯時間低於系統顯示的數字。這些數字是根據系統收集到的所有頁框而得出。

一旦您點選表格中的項目,系統就會顯示「UI 轉譯時間分布圖」圖表。建議您在查看這個圖表時,確認應用程式中的大部分影格轉譯時間都不超過 16 毫秒。

您可以從圖表下方的資料判斷應用程式的顯示效能,並且找出造成轉譯時間問題的根本原因。舉例來說,如果「輸入延遲時間過長」的百分比偏高,建議您檢查應用程式中用來處理使用者輸入內容的程式碼。如要進一步瞭解這些指標,請參閱測試 UI 效能

  • 錯過的 Vsync 事件數:針對所有轉譯時間超過 16 毫秒的影格,將錯過的 Vsync 事件數除以影格數。
  • 輸入延遲時間過長:針對所有轉譯時間超過 16 毫秒的影格,將超過 24 毫秒的輸入事件數除以影格數。
  • UI 執行緒速度緩慢:針對所有轉譯時間超過 16 毫秒的影格,將 UI 執行緒超過 8 毫秒才完成的次數除以影格數。
  • 繪圖指令速度緩慢:針對所有轉譯時間超過 16 毫秒的影格,將繪圖指令超過 12 毫秒才傳送到 GPU 的次數除以影格數。
  • 點陣圖上傳速度緩慢:針對所有轉譯時間超過 16 毫秒的影格,將點陣圖超過 3.2 毫秒才上傳到 GPU 的次數除以影格數。

修正問題

如果您應用程式中轉譯時間超過 16 毫秒的影格數量過多,請造訪 Android 開發人員網站查看建議的解決方案。

凍結影格的數量過多

「凍結影格的數量過多」頁面會針對使用者遇到超過 0.1% 影格的轉譯時間超出 700 毫秒的情形,提供每日工作階段百分比的詳細資訊。使用者與應用程式互動的執行速度應為每秒 60 個影格,而且不應出現掉格或延遲的情況。

關於資料收集作業的詳細說明

Google 會在應用程式透過 UI 工具包架構轉譯影格時收集各個影格的轉譯時間,但不會收集直接利用 OpenGL 或 Vulkan 轉譯影格的時間。

資訊主頁顯示的資料

展開任一維度列即可查看百分位數分析資料。

  • 受影響的工作階段數:使用者遇到超過 0.1% 影格轉譯時間超出 700 毫秒的每日工作階段百分比。如果使用者在某一天使用過應用程式,該日即算一個每日工作階段。舉例來說,如果有兩個使用者各自使用應用程式兩天,就會產生四個每日工作階段。
  • 工作階段數:大致記錄的工作階段數。
  • 第 90 個/第 99 個百分位數:共有 90%/99% 影格的轉譯時間低於系統顯示的數字。這些數字是根據系統收集到的所有頁框而得出。

點選表格中的項目就會出現「UI 轉譯時間分布圖」的圖表。建議您在查看這個圖表時,確認應用程式大部分影格的轉譯時間都低於 700 毫秒。

您可以從圖表下方的資料判斷應用程式的顯示效能,並且找出造成轉譯時間問題的根本原因。舉例來說,如果「輸入延遲時間長」的百分比偏高,建議您檢查應用程式中用來處理使用者輸入內容的程式碼。如要進一步瞭解這些指標,請參閱測試 UI 效能

  • 錯過的 Vsync 事件數:針對所有轉譯時間超過 16 毫秒的影格,將錯過的 Vsync 事件數除以影格數。
  • 輸入延遲時間過長:針對所有轉譯時間超過 16 毫秒的影格,將超過 24 毫秒的輸入事件數除以影格數。
  • UI 執行緒速度緩慢:針對所有轉譯時間超過 16 毫秒的影格,將 UI 執行緒超過 8 毫秒才完成的次數除以影格數。
  • 繪圖指令速度緩慢:針對所有轉譯時間超過 16 毫秒的影格,將繪圖指令超過 12 毫秒才傳送到 GPU 的次數除以影格數。
  • 點陣圖上傳速度緩慢:針對所有轉譯時間超過 16 毫秒的影格,將點陣圖超過 3.2 毫秒才上傳到 GPU 的次數除以影格數。

修正問題

如果您應用程式中轉譯時間超過 700 毫秒的影格數量過多,請造訪 Android 開發人員網站查看建議的解決方案。

電池用量

Wake Lock 停滯和部分 Wake Lock 停滯 (背景)

「部分 Wake Lock 停滯」和「部分 Wake Lock 停滯 (背景)」頁面會顯示應用程式透過 PowerManager 類別取得的部分 Wake Lock。部分 Wake Lock 可確保在能夠關閉螢幕和鍵盤背光的情況下,CPU 仍會保持運作。

關於資料收集作業的詳細說明

  • 為了維護隱私權,部分 Wake Lock 身分識別標記會經過匿名處理。
  • 系統只會在裝置未處於充電狀態且關閉螢幕的情況下,收集部分 Wake Lock 的資料。
  • 系統只會在應用程式於背景執行的情況下,收集部分 Wake Lock (背景) 的資料。
  • Google 會計算每個電池工作階段中部分 Wake Lock 的最長持續時間,顯示受到長時間 Wake Lock 影響的工作階段數。舉例來說,如果使用者觸發兩次持續一小時的 Wake Lock,Google 使用的 Wake Lock 上限值就是一小時。
  • 如果應用程式的資訊清單檔案已設定 sharedUserId:只有在已安裝一個 (且不得超過一個) 含有相同 sharedUserId 設定的應用程式時,您才會看到相關資料。

Vital 詳細資料

  • 受影響的工作階段數:使用者遇到至少一次 Wake Lock 時間超過一小時的電池工作階段百分比。
  • 工作階段數:大致記錄的工作階段數。
  • 第 90 個/第 99 個百分位數:在 10%/1% 的每日工作階段中,使用者遇到的部分 Wake Lock 持續時間超過系統顯示的數字。
  • 不良行為門檻:如果您應用程式的出現率等於或大於系統顯示的門檻,代表該應用程式位於 Google Play 前 1,000 個熱門應用程式的最低 25% (根據安裝次數計算)。

修正問題

如果您應用程式的部分 Wake Lock 停滯次數過多,請造訪 Android 開發人員網站查看建議的解決方案。

喚醒次數過多

「喚醒次數過多」頁面會顯示應用程式觸發的 Alarm Manager 喚醒次數。您會看到 ELAPSED_REALTIME_WAKEUPRTC_WAKEUP 類別的喚醒資料。

關於資料收集作業的詳細說明

  • 為了維護隱私權,喚醒身分識別標記會經過匿名處理。
  • 系統只會在裝置未充電時收集喚醒資料。
  • 為了提供正規化指標,喚醒次數會與裝置未處於充電狀態的時間做比較。Google 會計算每個使用者每小時遇到的喚醒次數,顯示受到高喚醒發生率影響的使用者人數。
  • 如果應用程式的資訊清單檔案已設定 sharedUserId:只有在已安裝一個 (且不得超過一個) 含有相同 sharedUserId 設定的應用程式時,您才會看到相關資料。

Vital 詳細資料

  • 受影響的工作階段數:使用者每小時遇到 10 次以上喚醒的電池工作階段百分比。電池工作階段是指系統在指定的 24 小時內,根據收到的所有電池報告彙整而成的時間資料。對於 Android 10 來說,電池報告指的是電池兩次充電 (從低於 20% 充至 80% 以上,或是從任意電量值充至 100%) 之間的間隔時間。對於 Android 11 以上版本來說,電池報告固定為 24 小時。Google 只會在裝置未處於充電狀態時收集資料。
  • 工作階段數:大致記錄的工作階段數。
  • 第 90 個/第 99 個百分位數:在 10%/1% 的每日工作階段中,使用者每小時遇到喚醒次數超過系統顯示的值。
  • 不良行為門檻:如果您應用程式的出現率等於或大於系統顯示的門檻,代表該應用程式位於 Google Play 前 1,000 個熱門應用程式的最低 25% (根據安裝次數計算)。

修正問題

如果您的應用程式經常發生喚醒情形,請造訪 Android 開發人員網站查看建議的解決方案。

Wi-Fi 掃描次數過多 (背景)

「Wi-Fi 掃描次數過多 (背景)」頁面會顯示 Wi-Fi 掃描造成高耗電的時間。

關於資料收集作業的詳細說明

系統只會在裝置未處於充電狀態且應用程式在背景執行的情況下,收集 Wi-Fi 掃描相關資料。

Vital 詳細資料

  • 受影響的工作階段數:使用者每小時遇到 4 次以上 Wi-Fi 掃描的電池工作階段百分比。
  • 工作階段數:大致記錄的工作階段數。
  • 第 90 個/第 99 個百分位數:在 10%/1% 的每日工作階段中,使用者每小時遇到的背景 Wi-Fi 掃描次數超過系統顯示的數字。

修正問題

如果您應用程式的背景 Wi-Fi 掃描次數過多,請造訪 Android 開發人員網站查看建議的解決方案。

網路用量過大 (背景)

「網路用量過大」頁面會顯示大量網路資料與背景服務建立關聯的時間。如果應用程式是在背景中傳輸或接收行動網路數據,使用者通常無法輕易找到可停止這類資料傳輸活動的控制介面。

關於資料收集作業的詳細說明

系統只會在裝置未處於充電狀態且應用程式在背景執行的情況下,收集行動網路用量的相關資料。

Vital 詳細資料

  • 受影響的工作階段數:使用者每日遇到背景行動網路用量超過 50 MB 的電池工作階段百分比。
  • 工作階段數:大致記錄的工作階段數。
  • 第 90 個/第 99 個百分位數:在 10%/1% 的每日工作階段中,使用者每日遇到的背景行動網路用量超過系統顯示的數字。

修正問題

如果您應用程式的背景網路用量過高,請造訪 Android 開發人員網站查看建議的解決方案。

權限

權限遭拒

「權限遭拒」頁面會針對使用者拒絕權限要求的情況,提供每日權限工作階段百分比的詳細資訊。如果應用程式在某一天向使用者要求過至少一項權限,該日即算一個每日權限工作階段。

關於資料收集作業的詳細說明

系統會在使用者針對應用程式內的權限要求做出回應時,收集權限遭拒的資料。

Vital 詳細資料

  • 遭拒:使用者拒絕權限要求的每日權限工作階段百分比。
  • 不要再詢問我:使用者選取「不要再詢問我」選項來拒絕權限要求的每日權限工作階段百分比。
  • 工作階段總數:大致記錄的工作階段數。

修正問題

如果您應用程式的權限遭拒次數過多,請造訪 Android 開發人員網站查看建議的解決方案。

使用維度分析資料

為了協助您整理、區隔及分析資料,系統會依據下列維度細分您應用程式的所有資料。

  • 成果:發生問題的應用程式版本
  • Android 版本 (SDK):使用者裝置回報的 Android 作業系統版本
  • 裝置類型:執行您應用程式的裝置類型 (例如手機、平板電腦、電視、穿戴式裝置)
  • 裝置型號:裝置的概略說明,由專屬的品牌名稱和裝置 ID 組成,例如「Google oriole」。單一裝置型號可能會有多種版本,分別搭載不同的 Android 版本、RAM、儲存空間或 SoC
  • 國家/地區:使用者裝置在發生問題時回報的地點
  • Wake Lock 名稱:使用應用程式中的 PowerManager API 時,透過程式化方式設定的標記
  • 喚醒名稱:使用應用程式中的 AlarmManager API 時,透過程式化方式設定的標記
  • ANR 活動名稱:發生 ANR 的活動類別完整名稱 (如果有的話)
  • ANR 類型:發生 ANR 的時間點,例如執行服務時 (如果有的話)

相關內容

請參閱這篇文章,探索運用 Android Vitals 來提升應用程式效能和穩定性的最佳做法。

 

這對您有幫助嗎?
我們應如何改進呢?

還有其他問題嗎?

登入即可獲得其他支援選項,快速解決您的問題

搜尋
清除搜尋內容
關閉搜尋
Google 應用程式
主選單
搜尋說明中心
true
92637
false
false