指標

  
追蹤及回報應用程式的各種執行階段指標
最近更新時間 穩定版 候選版 Beta 版 Alpha 版
2025 年 3 月 12 日 - - 1.0.0-beta02 -

宣告依附元件

如要為 Metrics 新增依附元件,您必須將 Google Maven 存放區新增至專案。詳情請參閱 Google 的 Maven 存放區

在應用程式或模組的 build.gradle 檔案中,新增所需構件的依附元件:

Groovy

dependencies {
    implementation "androidx.metrics:metrics-performance:1.0.0-beta02"
}

Kotlin

dependencies {
    implementation("androidx.metrics:metrics-performance:1.0.0-beta02")
}

如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 說明文件

1.0.0 版本

1.0.0-beta02 版

2025 年 3 月 12 日

發布 androidx.metrics:metrics-performance:1.0.0-beta02。1.0.0-beta02 版包含這些修訂項目

修正錯誤

  • 修正 DelegatingFrameMetricsListener cannot be cast... 的當機問題 (Id891cb/311218678)。

1.0.0-beta01 版

2024 年 1 月 10 日

這個程式庫的 API 和功能已穩定一段時間。這個版本只是將程式庫推送至 Beta 版。

發布 androidx.metrics:metrics-performance:1.0.0-beta011.0.0-beta01 版包含此連結所列的修訂項目。

1.0.0-alpha04 版本

2023 年 4 月 5 日

這個版本將 JankStats 更新為最新修正版本,其中包含更準確且全面的時間資訊。

發布 androidx.metrics:metrics-performance:1.0.0-alpha04查看 1.0.0-alpha04 版的修訂項

API 變更

  • cpuDuration 現已更準確,API 31 也新增 totalDuration (I59ce8b/243694893)

1.0.0-alpha03 版本

2022 年 7 月 27 日

發布 androidx.metrics:metrics-performance:1.0.0-alpha03查看 1.0.0-alpha03 版的修訂項

  • 隨著程式庫即將發布 Beta 版,這個版本包含微幅的 API 修正項目。其中一個 API 變更是從 createAndTrack() 工廠方法移除 Executor,以便建立 JankStats 物件。這會影響 OnFrameListener 回呼,因為該事件監聽器現在會在傳送每個影格資料至 JankStats 的執行緒上呼叫 (在 API 24 以下版本為 Main/UI 執行緒,在 API 24 以上版本為 FrameMetrics 執行緒)。此外,傳遞至事件監聽器的 FrameData 物件現在會在每個影格重複使用,因此在回呼期間,必須複製並在其他位置快取該物件中的資料,因為事件監聽器一傳回,該物件就會視為已淘汰。

  • 這個版本也修正了各項錯誤,包括一些並行問題。

  • 最後,修正 FrameData 的重複使用方式 (如上所述),這表示由於影格指標的傳送,系統沒有為每個影格配置資源。以往的配置資源不多,但使用新的做法後,您可以使用 JankStats,而不會在應用程式中產生任何因影格所致的 GC 負擔。

API 變更

  • 更新 PerformanceMetricsState 中的方法和參數名稱,讓這些呼叫的結果更加明確。(I56da5b/233421985)。
  • 新增基準測試以追蹤配置情形,移除部分與狀態管理和報告相關的內部配置。請注意,傳遞給事件監聽器的 FrameData 現已視為可變動,該結構將在下一個影格中重複使用,而且只有在事件監聽器回傳之前的資料才可信賴。
  • JankStats 的建構函式中移除 Executor;現在,系統會在接收內部資料的任何執行緒上呼叫事件監聽器。(I12743)

修正錯誤

  • 修正因重複移除 OnFrameMetricsAvailableListener 所造成的當機問題 (I44094b/239457413)
  • 返回在佇列前張貼 OnPreDrawListener 訊息的原始邏輯,藉此提高影格時間的一致性和可預測性。(I05a43b/233358407)。
  • 修正 ConcurrentModificationException 錯誤,避免事件監聽器委派清單在疊代傳送每個影格的資料時遭到修改。(Ib7693b/236612357)

1.0.0-alpha02 版

2022 年 6 月 29 日

發布 androidx.metrics:metrics-performance:1.0.0-alpha021.0.0-alpha02 版包含此連結所列的修訂項目。

API 變更

修正錯誤

1.0.0-alpha01 版

2022 年 2 月 9 日

發布 androidx.metrics:metrics-performance:1.0.0-alpha011.0.0-alpha01 版包含此連結所列的修訂項目。

新功能

  • JankStats 程式庫提供檢測功能,可在執行階段檢測及接收回呼,協助您找出實際的效能問題。
  • JankStats 結合可讓您輕鬆整合使用者介面狀態相關資訊的 API 以及每個影格效能的追蹤和報告功能,讓開發人員不是瞭解應用程式是否存在效能問題,而是瞭解問題出現的時間和原因。