跟踪

  
将跟踪事件写入系统跟踪缓冲区。
最新更新 稳定版本 发布候选版本 Beta 版本 Alpha 版本
2025 年 4 月 23 日 1.3.0 - - -

反馈

您的反馈有助于 Jetpack 变得更好。如果您发现新问题或对改进此库有任何想法,请告诉我们。在创建新问题之前,请查看此库中的现有问题。您可以通过点击星形按钮来为您支持的现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

版本 1.3

版本 1.3.0

2025 年 4 月 23 日

androidx.tracing:tracing:1.3.0androidx.tracing:tracing-android:1.3.0androidx.tracing:tracing-ktx:1.3.0 已发布。版本 1.3.0 包含这些提交

自 1.2.0 版以来的重要变更

  • 已将 androidx.tracing.Trace 类转换为 Kotlin,并将所有代码从 tracing-ktx 模块移至 tracing
  • 从 trace 中移除 crossinline,以允许在 @Composable 中使用。(I53882b/248344805

版本 1.3.0-rc01

2025 年 4 月 9 日

androidx.tracing:tracing:1.3.0-rc01androidx.tracing:tracing-android:1.3.0-rc01androidx.tracing:tracing-ktx:1.3.0-rc01 已发布,自上次 Beta 版以来无变化。版本 1.3.0-rc01 包含这些提交

版本 1.3.0-beta01

2025 年 2 月 12 日

androidx.tracing:tracing:1.3.0-beta01androidx.tracing:tracing-android:1.3.0-beta01androidx.tracing:tracing-ktx:1.3.0-beta01 已发布。版本 1.3.0-beta01 包含这些提交

API 变更

  • 已将所有代码从 tracing-ktx 模块移至 tracing。(Iba550
  • 已将 androidx.tracing.Trace 类转换为 Kotlin。(Ie4e5d

Bug 修复

  • 移除了对新平台 API 的手动勾勒(manual outlining),因为当使用 R8 和 AGP 7.3 或更高版本(例如 R8 版本 3.3)时,以及当使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)时,所有构建都会通过 API 建模自动完成此操作。建议不使用 AGP 的客户端更新到 D8 8.1 或更高版本。请参阅这篇文章了解更多详情。(Ia60e0b/345472586

版本 1.3.0-alpha02

2023 年 6 月 21 日

androidx.tracing:tracing:1.3.0-alpha02androidx.tracing:tracing-ktx:1.3.0-alpha02 已发布,与之前的 Alpha 版相比没有变化。版本 1.3.0-alpha02 包含这些提交。

版本 1.3.0-alpha01

2023 年 6 月 7 日

androidx.tracing:tracing:1.3.0-alpha01androidx.tracing:tracing-ktx:1.3.0-alpha01 已发布。版本 1.3.0-alpha01 包含这些提交。

API 变更

  • 从 trace 中移除 crossinline,以允许在 @Composable 中使用。(I53882b/248344805

版本 1.2

版本 1.2.0

2023 年 11 月 29 日

androidx.tracing:tracing:1.2.0androidx.tracing:tracing-ktx:1.2.0 已发布。版本 1.2.0 包含这些提交。

自 1.1.0 版以来的重要变更

  • 添加了带有惰性字符串和 Cookie 计算的 trace()traceAsync() 变体。此外,如果 Trace.begin 抛出异常,现在会正确跳过 Trace.end

版本 1.2.0-rc01

2023 年 5 月 24 日

androidx.tracing:tracing:1.2.0-rc01androidx.tracing:tracing-ktx:1.2.0-rc01 已发布。版本 1.2.0-rc01 包含这些提交。

Bug 修复

  • 通过自动截断来防止传递过长跟踪部分名称时发生崩溃(Iaf6e2

版本 1.2.0-beta04

2023 年 5 月 3 日

androidx.tracing:tracing:1.2.0-beta04androidx.tracing:tracing-ktx:1.2.0-beta04 已发布,无变化。版本 1.2.0-beta04 包含这些提交。

版本 1.2.0-beta03

2023 年 4 月 5 日

androidx.tracing:tracing:1.2.0-beta03androidx.tracing:tracing-ktx:1.2.0-beta03 已发布,没有新的变更。版本 1.2.0-beta03 包含这些提交。

版本 1.2.0-beta02

2023 年 3 月 22 日

androidx.tracing:tracing:1.2.0-beta02androidx.tracing:tracing-ktx:1.2.0-beta02 已发布,自上次 Beta 版以来没有变化。版本 1.2.0-beta02 包含这些提交。

版本 1.2.0-beta01

2023 年 3 月 8 日

androidx.tracing:tracing:1.2.0-beta01androidx.tracing:tracing-ktx:1.2.0-beta01 已发布,自上次 Alpha 版以来没有变化。版本 1.2.0-beta01 包含这些提交。

版本 1.2.0-alpha02

2023 年 2 月 23 日

androidx.tracing:tracing:1.2.0-alpha02androidx.tracing:tracing-ktx:1.2.0-alpha02 已发布,与之前的 Alpha 版相比没有变化。版本 1.2.0-alpha02 包含这些提交。

Bug 修复

  • 此版本将修复在升级到 androidx.tracing: tracing-perfetto-common:1.0.0-alpha11 时出现的 Could not find androidx.tracing:tracing-ktx:1.2.0-alpha02 错误

版本 1.2.0-alpha01

2022 年 10 月 5 日

androidx.tracing:tracing:1.2.0-alpha01androidx.tracing:tracing-ktx:1.2.0-alpha01 已发布。版本 1.2.0-alpha01 包含这些提交。

新功能

  • 添加了带有惰性字符串和 Cookie 计算的 trace()traceAsync() 变体。此外,如果 Trace.begin 抛出异常,现在会正确跳过 Trace.end。(I31421b/175233952b/247066503

跟踪版本 1.1

版本 1.1.0

2022 年 5 月 11 日

androidx.tracing:tracing:1.1.0androidx.tracing:tracing-ktx:1.1.0 已发布。版本 1.1.0 包含这些提交。

自 1.0.0 版以来的重要变更

  • 添加了 Trace.forceEnableAppTracing() API,用于在不可调试的构建中强制启用应用跟踪部分捕获(即 android.os.Trace / androidx.tracing API)。在 API 29 中引入 可分析清单标记之前,在启动开始时调用此方法,以启用不可调试的精确系统跟踪。(I3a309
  • 首次加载 Trace.java 时避免类验证错误(05f6b4cb101f

版本 1.1.0-rc01

2022 年 4 月 20 日

androidx.tracing:tracing:1.1.0-rc01androidx.tracing:tracing-ktx:1.1.0-rc01 已发布,自 beta01 以来没有变化。版本 1.1.0-rc01 包含这些提交。

版本 1.1.0-beta01

2021 年 12 月 1 日

androidx.tracing:tracing:1.1.0-beta01androidx.tracing:tracing-ktx:1.1.0-beta01 已发布。版本 1.1.0-beta01 包含这些提交。

1.1.0-alpha02 以来没有变化。

版本 1.1.0-alpha02

2021 年 11 月 17 日

androidx.tracing:tracing:1.1.0-alpha02androidx.tracing:tracing-ktx:1.1.0-alpha02 已发布。版本 1.1.0-alpha02 包含这些提交。

新功能

  • 添加了 Trace.forceEnableAppTracing() API,用于在不可调试的构建中强制启用应用跟踪部分捕获(即 android.os.Trace / andoridx.tracing API)。在 API 29 中引入可分析清单标记之前,在启动开始时调用此方法,以启用不可调试的精确系统跟踪。(I3a309

版本 1.1.0-alpha01

2021 年 11 月 3 日

androidx.tracing:tracing:1.1.0-alpha01androidx.tracing:tracing-ktx:1.1.0-alpha01 已发布。版本 1.1.0-alpha01 包含这些提交。

Bug 修复

  • 首次加载 Trace.java 时避免类验证错误(05f6b4cb101f

Perfetto 跟踪版本 1.0.0

版本 1.0.0

2023 年 10 月 4 日

androidx.tracing:tracing-perfetto:1.0.0androidx.tracing:tracing-perfetto-binary:1.0.0androidx.tracing:tracing-perfetto-handshake:1.0.0 已发布。版本 1.0.0 包含这些提交。

1.0.0 的主要功能

  • 这是 Tracing-perfetto 库的第一个稳定版本。

版本 1.0.0-rc01

2023 年 9 月 20 日

androidx.tracing:tracing-perfetto:1.0.0-rc01androidx.tracing:tracing-perfetto-binary:1.0.0-rc01androidx.tracing:tracing-perfetto-handshake:1.0.0-rc01 已发布,自上次 Beta 版以来无变化。版本 1.0.0-rc01 包含这些提交。

版本 1.0.0-beta03

2023 年 8 月 30 日

androidx.tracing:tracing-perfetto:1.0.0-beta03androidx.tracing:tracing-perfetto-binary:1.0.0-beta03androidx.tracing:tracing-perfetto-handshake:1.0.0-beta03 已发布。版本 1.0.0-beta03 包含这些提交。

  • 版本提升以匹配 androidx.benchmark 版本。

版本 1.0.0-beta02

2023 年 8 月 23 日

androidx.tracing:tracing-perfetto:1.0.0-beta02androidx.tracing:tracing-perfetto-binary:1.0.0-beta02androidx.tracing:tracing-perfetto-handshake:1.0.0-beta02 已发布。版本 1.0.0-beta02 包含这些提交。

新功能

  • 已启用应用启动(冷启动)时的跟踪支持。

版本 1.0.0-beta01

2023 年 7 月 18 日

androidx.tracing:tracing-perfetto:1.0.0-beta01androidx.tracing:tracing-perfetto-binary:1.0.0-beta01androidx.tracing:tracing-perfetto-handshake:1.0.0-beta01 已发布。版本 1.0.0-beta01 包含这些提交。

API 变更

  • 已将 androidx.tracing.perfetto.Trace 重命名为 androidx.tracing.perfetto.PerfettoSdkTraceI44af8
  • 为了保持一致性,已将协议中的“exit code”重命名为“result code”常量(Id1d1e
  • 已将 EnableTracingResponse 重命名为 Response。(I56275
  • 添加了一个选项,可在持久模式下启用冷启动跟踪。添加了一个用于清除(持久或非持久)冷启动跟踪的函数。(Iaa09d
  • 使 Tracing Perfetto SDK API 与 android.os.Trace 保持一致。(I73ba0b/282199917
  • 已切换到 LibrarySource 的工厂模式,如果需要,可以轻松将未来的用例(例如直接加载 .so 文件)添加到 API 中。(I128df
  • 使 enableTracingColdStart 参数与 enableTracingImmediate 匹配(I54126
  • 移除了 enableTracingColdStart 中的 killProcess 参数(I81c4d

版本 1.0.0-alpha17

2023 年 6 月 21 日

androidx.tracing:tracing-perfetto:1.0.0-alpha17androidx.tracing:tracing-perfetto-binary:1.0.0-alpha17androidx.tracing:tracing-perfetto-handshake:1.0.0-alpha17 已发布,与之前的 Alpha 版相比没有变化。版本 1.0.0-alpha17 包含这些提交。

版本 1.0.0-alpha16

2023 年 6 月 7 日

androidx.tracing:tracing-perfetto:1.0.0-alpha16androidx.tracing:tracing-perfetto-binary:1.0.0-alpha16androidx.tracing:tracing-perfetto-common:1.0.0-alpha16 已发布,与之前的 Alpha 版相比没有变化。版本 1.0.0-alpha16 包含这些提交。

版本 1.0.0-alpha15

2023 年 5 月 3 日

androidx.tracing:tracing-perfetto:1.0.0-alpha15androidx.tracing:tracing-perfetto-binary:1.0.0-alpha15androidx.tracing:tracing-perfetto-common:1.0.0-alpha15 已发布,无变化。版本 1.0.0-alpha15 包含这些提交。

版本 1.0.0-alpha14

2023 年 4 月 5 日

androidx.tracing:tracing-perfetto:1.0.0-alpha14androidx.tracing:tracing-perfetto-binary:1.0.0-alpha14androidx.tracing:tracing-perfetto-common:1.0.0-alpha14 已发布,没有新的变更。版本 1.0.0-alpha14 包含这些提交。

版本 1.0.0-alpha13

2023 年 3 月 22 日

androidx.tracing:tracing-perfetto:1.0.0-alpha13androidx.tracing:tracing-perfetto-binary:1.0.0-alpha13androidx.tracing:tracing-perfetto-common:1.0.0-alpha13 已发布,自上次发布以来没有变化。版本 1.0.0-alpha13 包含这些提交。

版本 1.0.0-alpha12

2023 年 3 月 8 日

androidx.tracing:tracing-perfetto:1.0.0-alpha12androidx.tracing:tracing-perfetto-binary:1.0.0-alpha12androidx.tracing:tracing-perfetto-common:1.0.0-alpha12 已发布,与之前的 Alpha 版相比没有变化。版本 1.0.0-alpha12 包含这些提交。

版本 1.0.0-alpha11

2023 年 2 月 22 日

androidx.tracing:tracing-perfetto:1.0.0-alpha11androidx.tracing:tracing-perfetto-binary:1.0.0-alpha11androidx.tracing:tracing-perfetto-common:1.0.0-alpha11 已发布,无变化。版本 1.0.0-alpha11 包含这些提交。

版本 1.0.0-alpha10

2023 年 2 月 8 日

androidx.tracing:tracing-perfetto:1.0.0-alpha10androidx.tracing:tracing-perfetto-binary:1.0.0-alpha10androidx.tracing:tracing-perfetto-common:1.0.0-alpha10 已发布,无变化。版本 1.0.0-alpha10 包含这些提交。

版本 1.0.0-alpha09

2023 年 2 月 10 日

androidx.tracing:tracing-perfetto-binary:1.0.0-alpha09 已发布。版本 1.0.0-alpha09 包含这些提交。

新功能

  • 版本提升发布,以允许其他 androidx.tracing:tracing-perfetto*: 1.0.0-alpha09 库协同工作。

2023 年 1 月 11 日

androidx.tracing:tracing-perfetto:1.0.0-alpha09androidx.tracing:tracing-perfetto-common:1.0.0-alpha09 已发布,无变化。版本 1.0.0-alpha09 包含这些提交。

版本 1.0.0-alpha08

2022 年 12 月 7 日

androidx.tracing:tracing-perfetto:1.0.0-alpha08androidx.tracing:tracing-perfetto-binary:1.0.0-alpha08androidx.tracing:tracing-perfetto-common:1.0.0-alpha08 已发布。版本 1.0.0-alpha08 包含这些提交。

新功能

  • 通过优化字符串处理方式来提高性能。

Bug 修复

  • 添加了一条 ProGuard 规则,如果使用 PerfettoNative 类,则可防止其方法被剪裁(这可以防止在跟踪已初始化但应用中没有跟踪调用时出现小概率崩溃)。

版本 1.0.0-alpha07

2022 年 11 月 9 日

androidx.tracing:tracing-perfetto:1.0.0-alpha07androidx.tracing:tracing-perfetto-binary:1.0.0-alpha07androidx.tracing:tracing-perfetto-common:1.0.0-alpha07 已发布。1.0.0-alpha07 版包含这些提交。

  • 降低了 androidx.tracing:tracing-perfetto API 的 JNI 开销。

版本 1.0.0-alpha06

2022 年 10 月 24 日

androidx.tracing:tracing-perfetto:1.0.0-alpha06androidx.tracing:tracing-perfetto-binary:1.0.0-alpha06androidx.tracing:tracing-perfetto-common:1.0.0-alpha06 已发布。1.0.0-alpha06 版包含这些提交。

  • 此更新未包含任何更改,仅更新版本号以与 androidx.benchmark 同步。

版本 1.0.0-alpha05

2022 年 10 月 5 日

androidx.tracing:tracing-perfetto:1.0.0-alpha05androidx.tracing:tracing-perfetto-binary:1.0.0-alpha05androidx.tracing:tracing-perfetto-common:1.0.0-alpha05 已发布。1.0.0-alpha05 版包含这些提交。

版本 1.0.0-alpha04

2022 年 9 月 21 日

androidx.tracing:tracing-perfetto:1.0.0-alpha04androidx.tracing:tracing-perfetto-binary:1.0.0-alpha04androidx.tracing:tracing-perfetto-common:1.0.0-alpha04 已发布。1.0.0-alpha04 版包含这些提交。

版本 1.0.0-alpha03

2022 年 9 月 7 日

androidx.tracing:tracing-perfetto:1.0.0-alpha03androidx.tracing:tracing-perfetto-binary:1.0.0-alpha03androidx.tracing:tracing-perfetto-common:1.0.0-alpha03 已发布。

新功能

  • 与 1.0.0-alpha02 相比无新功能。

版本 1.0.0-alpha02

2022 年 8 月 24 日

androidx.tracing:tracing-perfetto:1.0.0-alpha02androidx.tracing:tracing-perfetto-binary:1.0.0-alpha02androidx.tracing:tracing-perfetto-common:1.0.0-alpha02 已发布。1.0.0-alpha02 版包含这些提交。

Bug 修复

  • Perfetto 服务初始化方面的多项改进
  • 通过引入专用退出代码:RESULT_CODE_CANCELLED,改进了无响应情况的处理。
  • 改进了对解析错误的处理。
  • EnableTracingResponse.requiredVersion 设为可空,因为如果无法与软件包通信,就无法知道版本。(I5ba20

版本 1.0.0-alpha01

2022 年 7 月 27 日

androidx.tracing:tracing-perfetto:1.0.0-alpha01androidx.tracing:tracing-perfetto-binary:1.0.0-alpha01androidx.tracing:tracing-perfetto-common:1.0.0-alpha01 已发布。1.0.0-alpha01 版包含这些提交。

  • 注意:所有 androidx.tracing:tracing-perfetto*最初仅供 AndroidX 库内部使用。您应该没有必要直接依赖它们。

新功能

  • 所有 androidx.tracing:tracing-perfetto*最初仅供 AndroidX 库内部使用。您应该没有必要直接依赖它们。我们记录这些实现细节是为了提高透明度。

  • androidx.tracing:tracing-perfetto 是一个库,可帮助使用低开销的 Perfetto SDK 写入跟踪事件。此库可在 Benchmark、Android Studio 或 Perfetto UI 中使用。

  • androidx.tracing:tracing-perfetto-binary 是一组 androidx.tracing:tracing-perfetto 所需的二进制依赖项。

  • androidx.tracing:tracing-perfetto-commonandroidx.tracing:tracing-perfetto 的内部依赖项,可供工具用于与 androidx.tracing:tracing-perfetto 集成。

Tracing 版本 1.0.0

版本 1.0.0

2020 年 10 月 28 日

androidx.tracing:tracing:1.0.0androidx.tracing:tracing-ktx:1.0.0 已发布。1.0.0 版包含这些提交。

1.0.0 的主要功能

有助于将跟踪事件写入系统跟踪缓冲区。可以使用 Systrace 和 Perfetto 等工具将其可视化。此库取代了已弃用的 androidx.core.os.TraceCompat 类。

版本 1.0.0-rc01

2020 年 10 月 14 日

androidx.tracing:tracing:1.0.0-rc01androidx.tracing:tracing-ktx:1.0.0-rc01 已发布。1.0.0-rc01 版包含这些提交。

此版本与 1.0.0-beta01 相同。

版本 1.0.0-beta01

2020 年 6 月 24 日

androidx.tracing:tracing:1.0.0-beta01androidx.tracing:tracing-ktx:1.0.0-beta01 已发布,自 1.0.0-alpha01 以来无任何更改。1.0.0-beta01 版包含这些提交。

版本 1.0.0-alpha01

2020 年 6 月 10 日

androidx.tracing:tracing:1.0.0-alpha01androidx.tracing:tracing-ktx:1.0.0-alpha01 已发布。1.0.0-alpha01 版包含这些提交。

新功能

androidx.tracing 是一个库,可帮助将跟踪事件写入系统跟踪缓冲区。可以使用 Systrace 和 Perfetto 等工具将其可视化。此库取代了已弃用的 androidx.core.os.TraceCompat 类。此初始版本为 1.0.0-alpha01。