Theo dõi

  
Ghi các sự kiện theo dõi vào vùng đệm theo dõi hệ thống.
Bản cập nhật mới nhất Bản phát hành ổn định Bản phát hành dùng thử Bản phát hành beta Bản phát hành alpha
Ngày 12 tháng 10 năm 2026 2.0.4 - - -

Ý kiến phản hồi

Ý kiến phản hồi của bạn có thể giúp chúng tôi cải thiện Jetpack. Hãy cho chúng tôi biết nếu bạn phát hiện lỗi mới hoặc có ý tưởng cải thiện thư viện này. Vui lòng xem các lỗi hiện có trong thư viện này trước khi báo một lỗi mới. Bạn có thể thêm lượt bình chọn cho lỗi hiện có bằng cách nhấp vào nút dấu sao.

Báo lỗi mới

Xem tài liệu về Trình theo dõi sự cố để biết thêm thông tin.

Theo dõi

Phiên bản 2.0

Phiên bản 2.0.4

Ngày 12 tháng 10 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.4. Phiên bản 2.0.4 bao gồm các thay đổi sau.

Bản sửa lỗi
  • Khắc phục tình huống tương tranh khi xoá các gói theo dõi. (aosp/4344047)

Phiên bản 2.0.3

Ngày 23 tháng 9 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.3. Phiên bản 2.0.3 bao gồm các thay đổi sau.

Phiên bản 2.0.2

Ngày 9 tháng 9 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.2. Phiên bản 2.0.2 bao gồm các thay đổi sau.

Phiên bản 2.0.1

Ngày 26 tháng 8 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.1. Phiên bản 2.0.1 bao gồm các thay đổi sau.

Phiên bản 2.0.0

Ngày 12 tháng 8 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0. Phiên bản 2.0.0 bao gồm các thay đổi sau.

Các tính năng chính của phiên bản 2.0.0:

API trong quy trình mới cho phép:

  • Ghi lại nội dung dấu vết trong quá trình xử lý, tại hiện trường
  • Luồng Perfetto (mũi tên từ lát này sang lát khác)
  • Chú thích Perfetto (siêu dữ liệu lát cắt khoá/giá trị)
  • traceCoroutine() {} – API theo dõi coroutine theo dõi các hoạt động chuyển đổi luồng
  • Category filtering
  • Mức hao tổn thấp hơn đáng kể so với API android.os.Trace và trình bao bọc trace() {} hiện có
  • Theo dõi KMP – có thể dùng trên các thư viện không có phần phụ thuộc Android và trên các dự án JVM lưu trữ
  • Sau khi hợp nhất với tính năng ghi dấu vết hệ thống (được triển khai theo mặc định trong AndroidX Benchmark 1.5)

Xin lưu ý rằng các API theo dõi mới ghi vào một vùng đệm do quy trình kiểm soát mà tính năng ghi dấu vết hệ thống của Studio chưa ghi lại. Vấn đề này sẽ được giải quyết trong Trình phân tích tài nguyên của Studio trong bản phát hành sắp tới.

Các API android.os.Trace / trace() {} hiện có vẫn chưa ngừng hoạt động. Bạn vẫn nên dùng các API này cho những sự kiện tần suất thấp cần luôn được ghi vào vùng đệm truy vết hệ thống, đặc biệt là trong các thư viện.

Phiên bản 2.0.0-rc01

Ngày 29 tháng 7 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-rc01. Phiên bản 2.0.0-rc01 bao gồm các thay đổi sau.

Phiên bản 2.0.0-beta01

Ngày 15 tháng 7 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-beta01. Phiên bản 2.0.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

  • PerfettoCapture và PerfettoTraceRule hiện có thể thu thập dấu vết trong quá trình và hợp nhất chúng cho một gói mục tiêu. (I9a00b, b/497959820)
  • androidx.benchmark hiện có minSdk là 24. (Ic2a85)

Sửa lỗi

  • Phát hành Tracing 2.0-beta01. (I1b162)
  • Sử dụng giá trị nhận dạng luồng dành riêng cho nền tảng khi tạo thông tin về bản nhạc. (I6ba64)

Phiên bản 2.0.0-alpha09

Ngày 23 tháng 6 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha09. Phiên bản 2.0.0-alpha09 bao gồm các thay đổi sau.

Thay đổi về API

  • Thay đổi nhỏ về API trong Tracer để phân biệt giữa instant(...) và writeInstant(...). (I0935a)
  • Thêm tính năng hỗ trợ cho mã thông báo truyền trong sự kiện tức thì. (I99f81)
  • Cho phép sử dụng đầy đủ các luồng Perfetto trong API truyền ngữ cảnh thủ công thử nghiệm. (I20cb6)
  • Trì hoãn việc tạo BufferedSink và ProtoWriter trong TraceSink. (Ibd098)
  • Giúp việc khám phá Tracer trở nên đơn giản và có thể cắm cho cả Thư viện Java và Android. (I99111)
  • Giúp nhà phát triển thư viện dễ dàng khám phá một thực thể của TraceDriver có thể dùng để theo dõi trong quá trình. (Ia503e)

Phiên bản 2.0.0-alpha08

Ngày 19 tháng 5 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha08. Phiên bản 2.0.0-alpha08 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm khả năng khám phá và ghi đè các thực thể của TraceDriver để sử dụng trên toàn bộ quy trình. (I3f715)
  • Đổi tên Tracer.recordException thành Tracer.recordExceptionAndThrow. (I4411f, b/503092450)

Phiên bản 2.0.0-alpha07

Ngày 6 tháng 5 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha07. Phiên bản 2.0.0-alpha07 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm một API để lấy trình theo dõi giả lập có thể dùng khi tính năng theo dõi bị tắt. (I84c98)
  • Đảm bảo vòng đời truy vết nhất quán với truy vết hệ thống. (Ib391b)
  • Giờ đây, các API bộ đếm hoàn toàn không cần phân bổ. (I5e73a)

Sửa lỗi

  • Sửa quy tắc giữ lại cho SDK Perfetto (tracing-perfetto) để đảm bảo có thể bật SDK Perfetto. (I1d227)
  • Thêm khả năng theo dõi các sự kiện flush(). (I38014, b/495852704)

Phiên bản 2.0.0-alpha06

Ngày 22 tháng 4 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha06. Phiên bản 2.0.0-alpha06 bao gồm các thay đổi sau.

Thay đổi về API

  • Bỏ hạn chế File.createPerfettoFile() để người khác có thể tạo bồn rửa một cách an toàn. Khi một block() gửi một ngoại lệ trong trace / traceCoroutine, hãy tạo một sự kiện instant cho ngoại lệ đó bằng siêu dữ liệu đại diện cho các phần tử dấu vết ngăn xếp tương ứng. (I682e5, b/501536851, b/437166283)
  • Thêm một phương thức nạp chồng setCounter(...) lấy loại Long của Java. (Ic0469, b/356082604)
  • Tính năng theo dõi 2.0 hiện sử dụng Long cho giá trị nhận dạng Thread theo nền tảng cụ thể. (I67277)

Sửa lỗi

Phiên bản 2.0.0-alpha05

Ngày 8 tháng 4 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha05. Phiên bản 2.0.0-alpha05 bao gồm các thay đổi sau.

Thay đổi về API

  • Các hàm nhà máy TraceSink hiện trả về TraceSink chứ không phải AbstractTraceSink. Các tệp hiện có một hậu tố riêng biệt. Chúng ta đảm bảo có thể tạo một tệp mới theo cách thức nguyên tử. Tệp này sẽ được dùng để lưu trữ các gói theo dõi. (I4c4aa, b/496298726)
  • Đơn giản hoá và giúp việc truyền ngữ cảnh coroutine nhanh hơn. (Ia62db)
  • Giới thiệu attributes() không bắt buộc khi tạo một TraceDriver cung cấp cách thêm siêu dữ liệu liên quan đến một dấu vết. (Ia147e)

Sửa lỗi

  • Các luồng quy trình và kênh bộ đếm hiện đã được đồng bộ hoá. Thao tác này sẽ khắc phục các ngoại lệ của biểu mẫu: java.lang.NullPointerException: Cannot invoke "androidx.tracing.ThreadTrack.flush$tracing()" because "threadTrack" is null
  • Tránh phát ra các sự kiện chìm khi tính năng theo dõi bị tắt.

Phiên bản 2.0.0-alpha04

Ngày 25 tháng 3 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha04. Phiên bản 2.0.0-alpha04 bao gồm các thay đổi sau.

Thay đổi về API

  • Đặt AbstractTraceDriver ở dạng trừu tượng và chuyển phương thức triển khai Perfetto vào mô-đun tracing-wire. (Ie2f59)
  • Đặt tên mô tả hơn cho các hoạt động triển khai cơ sở để tránh sử dụng sai. Đối với những nhà phát triển trước đây mở rộng androidx.tracing.Trace{Sink|Driver}, giờ đây, họ sẽ cần chuyển sang sử dụng AbstractTrace{Sink|Driver}. (I9b46d)

Phiên bản 2.0.0-alpha03

Ngày 11 tháng 3 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha03. Phiên bản 2.0.0-alpha03 bao gồm các thay đổi sau.

Thay đổi về API

  • Thêm một phương thức triển khai InMemoryRingBufferTraceSink thử nghiệm cho phép đặt quy định hạn chế về dung lượng và tránh ghi vào ổ đĩa trừ phi có yêu cầu rõ ràng. (I1dc44, b/484409653, I65a37, b/484409653)
  • Khắc phục tình huống tương tranh khi phát ra các sự kiện theo dõi cho việc tạm ngưng và tiếp tục coroutine. (Ie145e)

Sửa lỗi

  • Theo mặc định, androidx.tracing không còn cố gắng vẽ các kết nối từ coroutine mẹ đến coroutine con trong dấu vết. Điều này gây nhầm lẫn vì định dạng dấu vết cơ bản không hỗ trợ các kết nối 1:N và N:1, dẫn đến một loạt mũi tên do sự mơ hồ về việc lát coroutine nào kết nối với lát nào. Bạn vẫn có thể chọn tham gia lan truyền theo cách thủ công bằng API tokenForManualPropagation() khi điều này quan trọng đối với trường hợp sử dụng của bạn. (Ib2cf9)

Phiên bản 2.0.0-alpha02

Ngày 25 tháng 2 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha02. Phiên bản 2.0.0-alpha02 bao gồm các thay đổi sau.

Tính năng mới

  • Cải thiện hiệu suất cho quá trình triển khai Perfetto Trace Sink bằng cách sử dụng hàm nội tại suspendCoroutineUninterceptedOrReturn (2ea97b).

Phiên bản 2.0.0-alpha01

Ngày 28 tháng 1 năm 2026

Phát hành androidx.tracing:tracing-*:2.0.0-alpha01. Phiên bản 2.0.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

AndroidX Tracing 2.0 giới thiệu một giao diện API mới quan trọng để theo dõi trong quy trình có mức hao tổn thấp, bổ sung cho các API hiện có dựa trên android.os.Tracing trong Tracing 1.0. Các API mới có sẵn trên cả Android và JVM lưu trữ, cho phép các công cụ lưu trữ phát ra dấu vết hao tổn thấp để phân tích hiệu suất, sử dụng cùng một định dạng dấu vết Perfetto tiêu chuẩn.

Cả Android Studio và Perfetto đều hỗ trợ dấu vết được phát ra, đồng thời có thể ghi lại dấu vết bằng một tập tính chất mở rộng, bao gồm cả việc gắn thẻ các Lát cắt bằng siêu dữ liệu (chẳng hạn như đối số hàm!) và truyền dấu vết ngữ cảnh coroutine.

Bản alpha ban đầu này chỉ dành cho quy trình truy vết trong quá trình và chưa tích hợp với tính năng truy vết hệ điều hành Android hoặc tính năng Truy vết hệ thống của Trình phân tích tài nguyên Studio. Các tính năng này sẽ có trong bản alpha sau này.

  /**
  * A [TraceSink] defines how traces are serialized.
  *
  * [androidx.tracing.wire.TraceSink] uses the `Perfetto` trace packet format.
  */
  fun createSink(): TraceSink {
      val outputDirectory = File(/* pathname = */ "/tmp/perfetto")
      // We are using the factory function defined in androidx.tracing.wire
      return TraceSink(
          sequenceId = 1,
          directory = outputDirectory
      )
  }

  /**
  * Creates a new instance of [androidx.tracing.TraceDriver].
  */
  fun createTraceDriver(): TraceDriver {
      // We are using a factory function from androidx.tracing.wire here.
      // `isEnabled` controls whether tracing is enabled for the application.
      val driver = TraceDriver(sink = createSink(), isEnabled = true)
      return driver
  }

  fun main() {
      val driver = createTraceDriver()
      driver.use {
          driver.tracer.trace(category = CATEGORY_MAIN, name = "basic") {
              Thread.sleep(100L)
          }
      }
  }

Thay đổi về API

  • Đặt Tracer làm thuộc tính của TraceDriver. (Iabd9b)
  • Thêm tính năng hỗ trợ cho việc truyền ngữ cảnh theo cách thủ công. (I899ff)
  • Thêm khả năng thêm thông tin ngăn xếp lệnh gọi vào một phần dấu vết. (If6a1b)
  • Giới thiệu các API androidx.tracing mới. (I5102b)
  • Cho phép sự kiện tức thời chứa siêu dữ liệu, đồng thời thêm bộ đếm vào sự kiện tức thời và bộ đếm. (Ia2ed3)
  • Giảm diện tích bề mặt của API được chú thích bằng @DelicateTracingApi. Không có gì trong API cấp cao nhất yêu cầu sử dụng @DelicateTracingApi. (I565e0)
  • Đơn giản hoá việc truyền ngữ cảnh bằng cách hợp nhất PropagationToken. (Iab839)
  • Ổn định API BlackHole trong androidx.benchmark. (I2b67e, b/451749438)
  • Thêm khả năng chú thích phần theo dõi dưới dạng span gốc. (Ic8365)
  • Cho phép nhà phát triển khai báo rõ ràng về mã thông báo truyền tải. (I06bb1)
  • Đổi tên MetadataHandleCloseable thành EventMetadataCloseable và MetadataHandle thành EventMetadata. Đồng thời, thêm đối số CoroutinePropagationToken không bắt buộc vào Tracer.traceCoroutine để cho phép nhà phát triển chỉ định rõ ràng mã thông báo truyền tải cần sử dụng. (I219f7, b/454147392)
  • Ra mắt điểm truy cập Tracer mới giúp nhà phát triển có nhiều quyền kiểm soát hơn đối với cách theo dõi. (I24a7b)
  • Thêm khả năng kiểm soát cách truyền bá bối cảnh diễn ra trong SliceTrack. (Ieb8fc)
  • fillCount trong PooledTracePacketArray hiện được đánh dấu là biến động một cách chính xác. (I75d2c)
  • Đánh dấu MetadataEntry @DelicateTracingApi. (I8c723)
  • Thêm khả năng cho TraceSink để có thể xử lý các sự kiện theo dõi bị mất (khi nhóm đã hết). (I3b374)
  • Thêm khả năng phát ra các sự kiện theo dõi có điều kiện dựa trên một vị từ. (I621b4)
  • Thêm khả năng thêm danh mục vào sự kiện theo dõi. (I449c2)
  • Đánh dấu TraceEvent, PooledTracePacketArray là DelicateTracingApi. (Iaac6d)
  • Đặt ProcessTrack.id, ThreadTrack.id, ThreadTrack.name, CounterTrack.name và CounterTrack.parent ở chế độ công khai. (I81210)
  • Đổi tên API SliceTrack.traceFlow() thành traceCoroutine(). (I79ad0)
  • Thêm khả năng thêm thông tin theo bối cảnh vào các lát cắt thông qua chú thích gỡ lỗi trong dấu vết Perfetto. (Ic2b56)
  • Cho phép tạo một thực thể của WireTraceSink bằng File / OutputStream. (Iecea0)
  • Xoá chú thích @RequiresApi(21) lỗi thời (Ic4792)

Phiên bản 1.3

Phiên bản 1.3.0

Ngày 23 tháng 4 năm 2025

Phát hành androidx.tracing:tracing:1.3.0, androidx.tracing:tracing-android:1.3.0 và androidx.tracing:tracing-ktx:1.3.0. Phiên bản 1.3.0 bao gồm các thay đổi sau.

Những thay đổi quan trọng kể từ phiên bản 1.2.0

  • Chuyển đổi lớp androidx.tracing.Trace sang Kotlin và di chuyển tất cả mã từ mô-đun tracing-ktx sang tracing.
  • Xoá chéo dòng khỏi dấu vết để cho phép sử dụng trong @Composable. (I53882, b/248344805)

Phiên bản 1.3.0-rc01

Ngày 9 tháng 4 năm 2025

androidx.tracing:tracing:1.3.0-rc01, androidx.tracing:tracing-android:1.3.0-rc01 và androidx.tracing:tracing-ktx:1.3.0-rc01 được phát hành mà không có thay đổi nào so với phiên bản thử nghiệm cuối cùng. Phiên bản 1.3.0-rc01 bao gồm các thay đổi sau.

Phiên bản 1.3.0-beta01

Ngày 12 tháng 2 năm 2025

Phát hành androidx.tracing:tracing:1.3.0-beta01, androidx.tracing:tracing-android:1.3.0-beta01 và androidx.tracing:tracing-ktx:1.3.0-beta01. Phiên bản 1.3.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

  • Chuyển tất cả mã từ mô-đun tracing-ktx sang tracing. (Iba550)
  • Đã chuyển đổi lớp androidx.tracing.Trace thành Kotlin. (Ie4e5d)

Sửa lỗi

  • Đã xóa quy trình phác thảo thủ công quyền truy cập vào các API nền tảng mới vì quy trình này diễn ra tự động thông qua việc lập mô hình API khi sử dụng R8 với AGP 7.3 trở lên (ví dụ: R8 phiên bản 3.3) và cho tất cả các bản dựng khi sử dụng AGP 8.1 trở lên (ví dụ: D8 phiên bản 8.1). Những ứng dụng không dùng AGP nên cập nhật lên D8 phiên bản 8.1 trở lên. Hãy xem bài viết này để biết thêm thông tin. (Ia60e0, b/345472586)

Phiên bản 1.3.0-alpha02

Ngày 21 tháng 6 năm 2023

androidx.tracing:tracing:1.3.0-alpha02 và androidx.tracing:tracing-ktx:1.3.0-alpha02 được phát hành mà không có thay đổi nào so với phiên bản alpha trước đó. Phiên bản 1.3.0-alpha02 bao gồm các thay đổi sau.

Phiên bản 1.3.0-alpha01

Ngày 7 tháng 6 năm 2023

Phát hành androidx.tracing:tracing:1.3.0-alpha01 và androidx.tracing:tracing-ktx:1.3.0-alpha01. Phiên bản 1.3.0-alpha01 bao gồm các thay đổi sau.

Thay đổi về API

  • Xoá crossinline khỏi dấu vết để cho phép sử dụng trong @Composable. (I53882, b/248344805)

Phiên bản 1.2

Phiên bản 1.2.0

Ngày 29 tháng 11 năm 2023

Phát hành androidx.tracing:tracing:1.2.0 và androidx.tracing:tracing-ktx:1.2.0. Phiên bản 1.2.0 bao gồm các thay đổi sau.

Thay đổi quan trọng kể từ phiên bản 1.1.0

  • Thêm các biến thể trace() và traceAsync() có chuỗi tải từng phần và điện toán cookie. Đồng thời, bỏ qua chính xác Trace.end nếu Trace.begin gửi.

Phiên bản 1.2.0-rc01

Ngày 24 tháng 5 năm 2023

Phát hành androidx.tracing:tracing:1.2.0-rc01 và androidx.tracing:tracing-ktx:1.2.0-rc01. Phiên bản 1.2.0-rc01 bao gồm các thay đổi sau.

Sửa lỗi

  • Ngăn sự cố khi tên mục dấu vết dài được truyền bằng cách tự động cắt ngắn (Iaf6e2)

Phiên bản 1.2.0-beta04

Ngày 3 tháng 5 năm 2023

androidx.tracing:tracing:1.2.0-beta04 và androidx.tracing:tracing-ktx:1.2.0-beta04 được phát hành mà không có thay đổi nào. Phiên bản 1.2.0-beta04 bao gồm các thay đổi sau.

Phiên bản 1.2.0-beta03

Ngày 5 tháng 4 năm 2023

androidx.tracing:tracing:1.2.0-beta03 và androidx.tracing:tracing-ktx:1.2.0-beta03 được phát hành mà không có thay đổi mới nào. Phiên bản 1.2.0-beta03 bao gồm các thay đổi sau.

Phiên bản 1.2.0-beta02

Ngày 22 tháng 3 năm 2023

androidx.tracing:tracing:1.2.0-beta02 và androidx.tracing:tracing-ktx:1.2.0-beta02 được phát hành mà không có thay đổi nào so với phiên bản thử nghiệm trước đó. Phiên bản 1.2.0-beta02 bao gồm các thay đổi sau.

Phiên bản 1.2.0-beta01

Ngày 8 tháng 3 năm 2023

androidx.tracing:tracing:1.2.0-beta01 và androidx.tracing:tracing-ktx:1.2.0-beta01 được phát hành mà không có thay đổi nào kể từ bản phát hành alpha gần đây nhất. Phiên bản 1.2.0-beta01 bao gồm các thay đổi sau.

Phiên bản 1.2.0-alpha02

Ngày 23 tháng 2 năm 2023

androidx.tracing:tracing:1.2.0-alpha02 và androidx.tracing:tracing-ktx:1.2.0-alpha02 được phát hành mà không có thay đổi nào so với phiên bản alpha trước đó. Phiên bản 1.2.0-alpha02 bao gồm các thay đổi sau.

Sửa lỗi

  • Bản phát hành này sẽ khắc phục lỗi Could not find androidx.tracing:tracing-ktx:1.2.0-alpha02 khi nâng cấp lên androidx.tracing: tracing-perfetto-common:1.0.0-alpha11

Phiên bản 1.2.0-alpha01

Ngày 5 tháng 10 năm 2022

Phát hành androidx.tracing:tracing:1.2.0-alpha01 và androidx.tracing:tracing-ktx:1.2.0-alpha01. Phiên bản 1.2.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

  • Thêm các biến thể trace() và traceAsync() có chuỗi tải từng phần và điện toán cookie. Đồng thời, bỏ qua chính xác Trace.end nếu Trace.begin gửi. (I31421, b/175233952, b/247066503)

Phiên bản 1.1

Phiên bản 1.1.0

Ngày 11 tháng 5 năm 2022

Phát hành androidx.tracing:tracing:1.1.0 và androidx.tracing:tracing-ktx:1.1.0. Phiên bản 1.1.0 bao gồm các thay đổi sau.

Thay đổi quan trọng kể từ phiên bản 1.0.0

  • Đã thêm Trace.forceEnableAppTracing() API để buộc bật tính năng ghi lại phần theo dõi ứng dụng (chẳng hạn như là android.os.Trace/androidx.tracing API) trên các bản dựng không thể gỡ lỗi. Hãy gọi hàm này khi bắt đầu để bật tính năng theo dõi hệ thống chính xác không thể gỡ lỗi trước khi giới thiệu thẻ tệp kê khai có thể định cấu hình trong API 29. (I3a309)
  • Tránh lỗi xác minh lớp khi Trace.java tải lần đầu tiên (05f6b4 và cb101f)

Phiên bản 1.1.0-rc01

Ngày 20 tháng 4 năm 2022

androidx.tracing:tracing:1.1.0-rc01 và androidx.tracing:tracing-ktx:1.1.0-rc01 được phát hành mà không có thay đổi nào kể từ beta01. Phiên bản 1.1.0-rc01 bao gồm các thay đổi sau.

Phiên bản 1.1.0-beta01

Ngày 1 tháng 12 năm 2021

Phát hành androidx.tracing:tracing:1.1.0-beta01 và androidx.tracing:tracing-ktx:1.1.0-beta01. Phiên bản 1.1.0-beta01 bao gồm các thay đổi sau.

Không có thay đổi nào từ 1.1.0-alpha02.

Phiên bản 1.1.0-alpha02

Ngày 17 tháng 11 năm 2021

Phát hành androidx.tracing:tracing:1.1.0-alpha02 và androidx.tracing:tracing-ktx:1.1.0-alpha02. Phiên bản 1.1.0-alpha02 bao gồm các thay đổi sau.

Tính năng mới

  • Thêm Trace.forceEnableAppTracing(), một API để buộc bật tính năng ghi lại phần theo dõi ứng dụng (như là android.os.Trace/API andoridx.tracing) trên các bản dựng không thể gỡ lỗi. Hãy gọi hàm này khi bắt đầu để bật tính năng theo dõi hệ thống chính xác không thể gỡ lỗi trước khi giới thiệu thẻ tệp kê khai có thể định cấu hình trong API 29. (I3a309)

Phiên bản 1.1.0-alpha01

Ngày 3 tháng 11 năm 2021

Phát hành androidx.tracing:tracing:1.1.0-alpha01 và androidx.tracing:tracing-ktx:1.1.0-alpha01. Phiên bản 1.1.0-alpha01 bao gồm các thay đổi sau.

Sửa lỗi

  • Tránh lỗi xác minh lớp khi Trace.java tải lần đầu tiên (05f6b4 và cb101f)

Phiên bản 1.0

Phiên bản 1.0.0

Ngày 28 tháng 10 năm 2020

Phát hành androidx.tracing:tracing:1.0.0 và androidx.tracing:tracing-ktx:1.0.0. Phiên bản 1.0.0 bao gồm các thay đổi sau.

Các tính năng chính của phiên bản 1.0.0

Giúp ghi các sự kiện theo dõi vào vùng đệm theo dõi hệ thống. Hành vi này có thể trực quan hoá bằng các công cụ như Systrace và Perfetto. Thư viện này thay thế lớp androidx.core.os.TraceCompat đã ngừng hoạt động.

Phiên bản 1.0.0-rc01

Ngày 14 tháng 10 năm 2020

Phát hành androidx.tracing:tracing:1.0.0-rc01 và androidx.tracing:tracing-ktx:1.0.0-rc01. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.

Bản phát hành này tương tự như phiên bản 1.0.0-beta01.

Phiên bản 1.0.0-beta01

Ngày 24 tháng 6 năm 2020

androidx.tracing:tracing:1.0.0-beta01 và androidx.tracing:tracing-ktx:1.0.0-beta01 được phát hành mà không có sự thay đổi nào so với phiên bản 1.0.0-alpha01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha01

Ngày 10 tháng 6 năm 2020

Phát hành androidx.tracing:tracing:1.0.0-alpha01 và androidx.tracing:tracing-ktx:1.0.0-alpha01. Phiên bản 1.0.0-alpha01 bao gồm các thay đổi sau.

Tính năng mới

androidx.tracing là một thư viện giúp ghi các sự kiện theo dõi vào vùng đệm theo dõi hệ thống. Hành vi này có thể trực quan hoá bằng các công cụ như Systrace và Perfetto. Thư viện này thay thế lớp androidx.core.os.TraceCompat đã ngừng hoạt động. Bản phát hành ban đầu này là 1.0.0-alpha01.

Tracing Perfetto

Phiên bản 1.0

Phiên bản 1.0.1

Ngày 19 tháng 11 năm 2025

Phát hành androidx.tracing:tracing-perfetto:1.0.1, androidx.tracing:tracing-perfetto-binary:1.0.1 và androidx.tracing:tracing-perfetto-handshake:1.0.1. Phiên bản 1.0.1 bao gồm các thay đổi sau.

Sửa lỗi

  • Hỗ trợ kích thước trang 16 KB (b7a7dd)
  • Đã xóa quy trình vạch ra thủ công quyền truy cập vào các API nền tảng mới vì quy trình này diễn ra tự động thông qua việc tạo mô hình API khi sử dụng R8 với AGP 7.3 trở lên (ví dụ: R8 phiên bản 3.3) và cho tất cả các bản dựng khi sử dụng AGP 8.1 trở lên (ví dụ: D8 phiên bản 8.1). Những ứng dụng không dùng AGP nên cập nhật lên D8 phiên bản 8.1 trở lên. Hãy xem bài viết này để biết thêm thông tin. (Ia60e0, b/345472586)
  • Tránh gói các bản sao của FastNative/CriticalNative trong thư viện và sử dụng các bản sao ổn định của nền tảng. (I8238a, b/35664282, b/280878596)

Phiên bản 1.0.0

Ngày 4 tháng 10 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0, androidx.tracing:tracing-perfetto-binary:1.0.0 và androidx.tracing:tracing-perfetto-handshake:1.0.0. Phiên bản 1.0.0 bao gồm các thay đổi sau.

Các tính năng chính của phiên bản 1.0.0

  • Đây là bản phát hành ổn định đầu tiên của thư viện Tracing-perfetto.

Phiên bản 1.0.0-rc01

Ngày 20 tháng 9 năm 2023

androidx.tracing:tracing-perfetto:1.0.0-rc01, androidx.tracing:tracing-perfetto-binary:1.0.0-rc01 và androidx.tracing:tracing-perfetto-handshake:1.0.0-rc01 được phát hành mà không có thay đổi nào so với phiên bản thử nghiệm cuối cùng. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.

Phiên bản 1.0.0-beta03

Ngày 30 tháng 8 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0-beta03, androidx.tracing:tracing-perfetto-binary:1.0.0-beta03 và androidx.tracing:tracing-perfetto-handshake:1.0.0-beta03. Phiên bản 1.0.0-beta03 bao gồm các thay đổi sau.

  • Tăng phiên bản để khớp với bản phát hành androidx.benchmark.

Phiên bản 1.0.0-beta02

Ngày 23 tháng 8 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0-beta02, androidx.tracing:tracing-perfetto-binary:1.0.0-beta02 và androidx.tracing:tracing-perfetto-handshake:1.0.0-beta02. Phiên bản 1.1.0-beta02 bao gồm các thay đổi sau.

Tính năng mới

  • Bật tính năng hỗ trợ theo dõi khi khởi động ứng dụng (khởi động nguội).

Phiên bản 1.0.0-beta01

Ngày 18 tháng 7 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0-beta01, androidx.tracing:tracing-perfetto-binary:1.0.0-beta01 và androidx.tracing:tracing-perfetto-handshake:1.0.0-beta01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.

Thay đổi về API

  • Đổi tên androidx.tracing.perfetto.Trace thành androidx.tracing.perfetto.PerfettoSdkTrace (I44af8)
  • Đổi tên hằng số "exit code" (mã thoát) thành "result code" (mã kết quả) trong giao thức để đảm bảo tính nhất quán (Id1d1e)
  • Đổi tên EnableTracingResponse thành Response. (I56275)
  • Thêm lựa chọn bật tính năng theo dõi khởi động nguội ở chế độ liên tục. Thêm một hàm để xoá tính năng theo dõi khởi động nguội (có hoặc không liên tục). (Iaa09d)
  • Đã điều chỉnh các API Perfetto SDK để theo dõi cho nhất quán với android.os.Trace. (I73ba0, b/282199917)
  • Chuyển sang mẫu nhà máy cho LibrarySource, cho phép dễ dàng thêm các trường hợp sử dụng trong tương lai (ví dụ: tải trực tiếp tệp .so) vào API nếu cần. (I128df)
  • Điều chỉnh các tham số enableTracingColdStart cho phù hợp với enableTracingImmediate (I54126)
  • Đã xóa đối số killProcess trong enableTracingColdStart (I81c4d)

Phiên bản 1.0.0-alpha17

Ngày 21 tháng 6 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha17, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha17 và androidx.tracing:tracing-perfetto-handshake:1.0.0-alpha17 mà không có thay đổi nào so với phiên bản alpha trước đó. Phiên bản 1.0.0-alpha17 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha16

Ngày 7 tháng 6 năm 2023

Các phiên bản androidx.tracing:tracing-perfetto:1.0.0-alpha16, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha16 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha16 không có thay đổi nào so với phiên bản alpha trước. Phiên bản 1.0.0-alpha16 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha15

Ngày 3 tháng 5 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha15, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha15 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha15 mà không có sự thay đổi nào. Phiên bản 1.0.0-alpha15 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha14

Ngày 5 tháng 4 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha14, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha14 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha14 mà không có thay đổi mới nào. Phiên bản 1.0.0-alpha14 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha13

Ngày 22 tháng 3 năm 2023

androidx.tracing:tracing-perfetto:1.0.0-alpha13, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha13 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha13 được phát hành mà không có thay đổi nào so với bản phát hành gần đây nhất. Phiên bản 1.0.0-alpha13 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha12

Ngày 8 tháng 3 năm 2023

androidx.tracing:tracing-perfetto:1.0.0-alpha12, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha12 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha12 được phát hành mà không có thay đổi nào kể từ phiên bản alpha trước. Phiên bản 1.0.0-alpha12 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha11

Ngày 22 tháng 2 năm 2023

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha11, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha11 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha11 mà không có sự thay đổi nào. Phiên bản 1.0.0-alpha11 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha10

Ngày 8 tháng 2 năm 2023

androidx.tracing:tracing-perfetto:1.0.0-alpha10, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha10 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha10 được phát hành mà không có sự thay đổi nào. Phiên bản 1.0.0-alpha10 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha09

Ngày 10 tháng 2 năm 2023

Phát hành androidx.tracing:tracing-perfetto-binary:1.0.0-alpha09. Phiên bản 1.0.0-alpha09 bao gồm các thay đổi sau.

Tính năng mới

  • Phát hành phiên bản tăng lên để cho phép các thư viện androidx.tracing:tracing-perfetto*: 1.0.0-alpha09 khác hoạt động cùng nhau.

Ngày 11 tháng 1 năm 2023

androidx.tracing:tracing-perfetto:1.0.0-alpha09 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha09 được phát hành mà không có thay đổi nào. Phiên bản 1.0.0-alpha09 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha08

Ngày 7 tháng 12 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha08, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha08 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha08. Phiên bản 1.0.0-alpha08 bao gồm các thay đổi sau.

Tính năng mới

  • Cải thiện hiệu suất bằng cách tối ưu hoá cách xử lý các chuỗi.

Sửa lỗi

  • Thêm quy tắc ProGuard để ngăn việc rút gọn các phương thức PerfettoNative nếu lớp này được sử dụng (ngăn sự cố trong trường hợp cụ thể khi khởi chạy hoạt động theo dõi, nhưng không có lệnh gọi theo dõi nào trong ứng dụng).

Phiên bản 1.0.0-alpha07

Ngày 9 tháng 11 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha07, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha07 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha07. Phiên bản 1.0.0-alpha07 bao gồm các thay đổi sau.

  • Giảm mức hao tổn JNI của API androidx.tracing:tracing-perfetto.

Phiên bản 1.0.0-alpha06

Ngày 24 tháng 10 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha06, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha06 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha06. Phiên bản 1.0.0-alpha06 bao gồm các thay đổi sau.

  • Bản cập nhật này không có thay đổi, chỉ cập nhật số phiên bản để đồng bộ hoá với androidx.benchmark.

Phiên bản 1.0.0-alpha05

Ngày 5 tháng 10 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha05, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha05 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha05. Phiên bản 1.0.0-alpha05 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha04

Ngày 21 tháng 9 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha04, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha04 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha04. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.

Phiên bản 1.0.0-alpha03

Ngày 7 tháng 9 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha03, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha03 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha03.

Tính năng mới

  • Không có tính năng mới nào kể từ phiên bản 1.0.0-alpha02.

Phiên bản 1.0.0-alpha02

Ngày 24 tháng 8 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha02, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha02 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha02. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.

Sửa lỗi

  • Một số điểm cải tiến đối với quá trình khởi động dịch vụ Perfetto
  • Cải thiện khả năng xử lý trường hợp không phản hồi bằng cách đưa ra mã thoát chuyên biệt: RESULT_CODE_CANCELLED.
  • Cải thiện khả năng xử lý lỗi phân tích cú pháp.
  • Thêm tính chất rỗng cho EnableTracingResponse.requiredVersion, vì chúng tôi không thể biết được phiên bản nếu không giao tiếp được với gói. (I5ba20)

Phiên bản 1.0.0-alpha01

Ngày 27 tháng 7 năm 2022

Phát hành androidx.tracing:tracing-perfetto:1.0.0-alpha01, androidx.tracing:tracing-perfetto-binary:1.0.0-alpha01 và androidx.tracing:tracing-perfetto-common:1.0.0-alpha01. Phiên bản 1.0.0-alpha01 bao gồm các thay đổi sau.

  • Lưu ý: Tất cả thư viện androidx.tracing:tracing-perfetto* ban đầu chỉ dành cho mục đích sử dụng nội bộ bên trong các thư viện AndroidX. Bạn không cần phải phụ thuộc trực tiếp vào chúng.

Tính năng mới

  • Tất cả các thư viện androidx.tracing:tracing-perfetto* ban đầu chỉ dành cho mục đích sử dụng nội bộ bên trong thư viện AndroidX. Và bạn không cần phải phụ thuộc trực tiếp vào chúng. Chúng tôi hiện ghi lại các chi tiết triển khai này theo cách minh bạch.

  • androidx.tracing:tracing-perfetto là một thư viện giúp ghi các sự kiện theo dõi bằng cách sử dụng SDK Perfetto với mức hao tổn thấp. Thành phần này có thể được dùng trong giao diện người dùng Benchmark, Android Studio hoặc Perfetto.

  • androidx.tracing:tracing-perfetto-binary là một tập hợp các phần phụ thuộc nhị phân bắt buộc đối với androidx.tracing:tracing-perfetto.

  • androidx.tracing:tracing-perfetto-common là phần phụ thuộc nội bộ của androidx.tracing:tracing-perfetto và có thể được dùng bằng công cụ để tích hợp với androidx.tracing:tracing-perfetto.