Chỉ số
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 10 tháng 1 năm 2024 | - | - | 1.0.0-beta01 | - |
Khai báo phần phụ thuộc
Để thêm một phần phụ thuộc trên Metrics, bạn phải thêm kho lưu trữ Google Maven vào dự án. Đọc nội dung Kho lưu trữ Maven của Google để biết thêm thông tin.
Thêm các phần phụ thuộc cho cấu phần phần mềm bạn cần trong tệp build.gradle
cho ứng dụng hoặc mô-đun:
Groovy
dependencies { implementation "androidx.metrics:metrics-performance:1.0.0-beta01" }
Kotlin
dependencies { implementation("androidx.metrics:metrics-performance:1.0.0-beta01") }
Để biết thêm thông tin về các phần phụ thuộc, hãy xem bài viết Thêm phần phụ thuộc vào bản dựng.
Ý 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.
Hãy xem tài liệu về công cụ theo dõi lỗi để biết thêm thông tin.
Phiên bản 1.0.0
Phiên bản 1.0.0-beta01
Ngày 10 tháng 1 năm 2024
API và chức năng của thư viện này đã ổn định trong một thời gian. Bản phát hành này chỉ đưa thư viện lên phiên bản thử nghiệm.
Phát hành androidx.metrics:metrics-performance:1.0.0-beta01
. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.
Phiên bản 1.0.0-alpha04
Ngày 5 tháng 4 năm 2023
Bản phát hành này cập nhật JankStats lên những bản sửa lỗi mới nhất, bao gồm cả thông tin thời gian chính xác và toàn diện hơn.
Phát hành androidx.metrics:metrics-performance:1.0.0-alpha04
. Phiên bản 1.0.0-alpha04 bao gồm các thay đổi sau.
Các thay đổi về API
cpuDuration
hiện chính xác hơn, cũng mới làtotalDuration
trên API31 (I59ce8, b/243694893)
Phiên bản 1.0.0-alpha03
Ngày 27 tháng 7 năm 2022
Phát hành androidx.metrics:metrics-performance:1.0.0-alpha03
. Phiên bản 1.0.0-alpha03 bao gồm các thay đổi sau.
Bản phát hành này chứa một số nội dung tinh chỉnh nhỏ trong API khi thư viện sắp gần đến giai đoạn thử nghiệm beta. Một trong những thay đổi về API sẽ xóa Trình thực thi khỏi phương thức ban đầu của
createAndTrack()
để tạo đối tượngJankStats
. Điều này ảnh hưởng đến lệnh gọi lạiOnFrameListener
, vì trình nghe đó hiện được gọi trên luồng (thread) sẽ phân phối dữ liệu trên mỗi khung hình choJankStats
(luồng Chính/giao diện người dùng trên các phiên bản trước API 24 và chuỗiFrameMetrics
trên API 24 trở lên). Hơn nữa, đối tượngFrameData
được truyền đến trình nghe hiện được sử dụng lại trong mọi khung. Vì vậy, dữ liệu từ đối tượng đó phải được sao chép và lưu vào bộ nhớ đệm ở nơi khác trong quá trình gọi lại, vì đối tượng đó sẽ được coi là đã lỗi thời ngay khi trình nghe trả về.Ngoài ra, chúng tôi cũng sửa nhiều lỗi khác nhau, trong đó có một số vấn đề đồng thời.
Cuối cùng, bản sửa lỗi để sử dụng lại
FrameData
(đã đề cập ở trên) có nghĩa là hiện không có lượt phân bổ nào cho mỗi khung do việc phân phối chỉ số khung. Trước đây không có nhiều phương thức phân bổ, nhưng phương pháp mới có nghĩa là bạn có thể sử dụngJankStats
mà không phải chịu bất kỳ chi phí GC nào cho mỗi khung hình trong ứng dụng của mình.
Các thay đổi về API
- Cập nhật tên phương thức và tham số trong
PerformanceMetricsState
để kết quả của các lệnh gọi đó rõ ràng hơn. (I56da5, b/233421985) - Thêm các thử nghiệm đo điểm chuẩn để theo dõi quá trình phân bổ, loại bỏ một số quá trình phân bổ nội bộ liên quan đến việc quản lý và báo cáo trạng thái. Lưu ý là
FrameData
được truyền đến trình nghe hiện được cho là không ổn định; cấu trúc đó sẽ được sử dụng lại cho khung tiếp theo và dữ liệu chỉ đáng tin cậy cho đến khi trình nghe trả về. - Xóa Trình thực thi khỏi hàm khởi tạo cho
JankStats
; trình nghe hiện được gọi trên bất kỳ luồng nào mà dữ liệu nội bộ đã nhận được. (I12743)
Sửa lỗi
- Khắc phục sự cố do xóa hai lần của
OnFrameMetricsAvailableListener
(I44094, b/239457413) - Quay lại logic ban đầu của việc đăng thông báo
OnPreDrawListener
ở đầu hàng đợi để có thời gian kết xuất khung nhất quán và dễ dự đoán hơn. (I05a43, b/233358407) - Khắc phục lỗi
ConcurrentModificationException
trong đó danh sách trình nghe được ủy quyền đang được sửa đổi trong khi nó cũng lặp lại để gửi dữ liệu trên mỗi khung hình. (Ib7693, b/236612357)
Phiên bản 1.0.0-alpha02
Ngày 29 tháng 6 năm 2022
Phát hành androidx.metrics:metrics-performance:1.0.0-alpha02
. Phiên bản 1.0.0-alpha02 bao gồm các thay đổi sau.
Các thay đổi về API
- Đã đổi tên
MetricsStateHolder
thành Người giữ (trongPerformanceMetricsState
): (I5a4d9, b/226565716, b/213499234 )
Sửa lỗi
- Khắc phục vấn đề về thời gian mà các trạng thái có thể được thay thế bằng các giá trị mới trước khi khung hình được xử lý khi trạng thái cũ đã chính xác (aosp/2061892, b/213499234)
- Khắc phục ngoại lệ sửa đổi đồng thời trong việc thêm/xóa trình xử lý (aosp/2092714, b/213499234)
- Giúp tính toán startTime chính xác hơn (aosp/2027704, b/213245198)
- Đã khắc phục lỗi trong quá trình triển khai
FrameData.equals()
(aosp/2025866, b/218296544)
Phiên bản 1.0.0-alpha01
Ngày 9 tháng 2 năm 2022
Phát hành androidx.metrics:metrics-performance: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
- Thư viện
JankStats
cung cấp chức năng đo lường và nhận lệnh gọi lại trong ứng dụng của bạn trong thời gian chạy, nhờ đó, bạn có thể tìm thấy các vấn đề về hiệu suất trong thực tế. JankStats
kết hợp một API giúp bạn dễ dàng chèn thông tin về trạng thái giao diện người dùng với các tính năng theo dõi và báo cáo hiệu suất trên mỗi khung hình nhằm giúp nhà phát triển nắm được liệu một ứng dụng có gặp vấn đề về hiệu suất hay không, không bao gồm thời điểm và lý do.