Annotation

  
Hiển thị siêu dữ liệu giúp công cụ và các nhà phát triển khác biết được mã của ứng dụng.

Bảng này liệt kê tất cả cấu phần phần mềm trong nhóm androidx.annotation.

Cấu phần phần mềm 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
chú thích 1.4.0 - - -
annotation-experimental 1.2.0 - - -
Lần gần nhất cập nhật thư viện này: ngày 15 tháng 6 năm 2022

Khai báo phần phụ thuộc

Để thêm một phần phụ thuộc trên Annotation, 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 mềm bạn cần trong tệp build.gradle cho ứng dụng hoặc mô-đun:

Groovy

dependencies {
    implementation "androidx.annotation:annotation:1.4.0"
    // To use the Java-compatible @Experimental API annotation
    implementation "androidx.annotation:annotation-experimental:1.2.0"
}

Kotlin

dependencies {
    implementation("androidx.annotation:annotation:1.4.0")
    // To use the Java-compatible @Experimental API annotation
    implementation("androidx.annotation:annotation-experimental:1.2.0")
}

Để 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.

Báo lỗi mới

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.4.0

Phiên bản 1.4.0

Ngày 15 tháng 6 năm 2022

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

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

  • @RestrictTo đã được di chuyển sang các nguồn Kotlin và hiện hỗ trợ trang web sử dụng @file. Do đó, thư viện Chú thích hiện phụ thuộc vào thư viện chuẩn trong Kotlin.
  • @ReturnThis (b/140249763): Đảm bảo rằng các phương thức ghi đè của phương thức này phải trả về cùng một phiên bản (dành cho trình tạo, v.v.)
  • @OpenForTesting (b/141539024): Bạn có thể chú thích các lớp và phương thức Kotlin được đánh dấu là "mở" bằng chú thích này và công cụ tìm lỗi mã nguồn sẽ đảm bảo rằng lớp này chỉ được phân lớp con (và các phương thức chỉ bị ghi đè) từ các kiểm thử đơn vị
  • @DeprecatedSinceApi (b/37116481): Cho biết rằng phương thức (hoặc lớp hoặc trường) được chú thích là một phần của thư viện điều chỉnh cho phiên bản cũ cho API nền tảng và không còn cần đến cấp độ API nhất định nữa.
  • @EmptySuper: Cho biết phương thức này được xác định là trống. Vì vậy, bạn không cần phải gọi phương thức này khi ghi đè (thậm chí trên thực tế bạn không nên gọi phương thức này; chẳng hạn như phương thức có thể chứa tính năng kiểm tra khả năng tương thích ngược).

Phiên bản 1.4.0-rc01

Ngày 1 tháng 6 năm 2022

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

  • Đã hoàn thiện về nền tảng và chức năng của API để có thể phát hành.

Phiên bản 1.4.0-beta01

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

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

  • Không có thay đổi nào kể từ bản phát hành alpha cuối cùng. Nền tảng API đã bị khoá đối với bản phát hành Beta.

Phiên bản 1.4.0-alpha02

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

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

Tính năng mới

  • Thêm các chú thích @ReturnThis, @OpenForTesting, @EmptySuper@DeprecatedSinceApi. (21946a2)

  • @ReturnThis (b/140249763): Đảm bảo rằng các phương thức ghi đè của phương thức này phải trả về cùng một phiên bản (dành cho trình tạo, v.v.)

  • @OpenForTesting (b/141539024): Bạn có thể chú thích các lớp và phương thức Kotlin được đánh dấu là "mở" bằng chú thích này và công cụ tìm lỗi mã nguồn sẽ đảm bảo rằng lớp này chỉ được phân lớp con (và các phương thức chỉ bị ghi đè) từ các kiểm thử đơn vị

  • @DeprecatedSinceApi (b/37116481): Cho biết rằng phương thức (hoặc lớp hoặc trường) được chú thích là một phần của thư viện điều chỉnh cho phiên bản cũ cho API nền tảng và không còn cần đến cấp độ API nhất định nữa.

  • @EmptySuper: Cho biết rằng phương thức này được xác định là trống. Vì vậy, khi ghi đè, bạn không cần phải gọi phương thức này (và trên thực tế bạn không nên gọi phương thức này; ví dụ: phương thức có thể chứa tính năng kiểm tra khả năng tương thích ngược).

Phiên bản 1.4.0-alpha01

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

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

Thay đổi về API

  • Di chuyển chú thích RestrictTo sang các nguồn Kotlin (Ia6336)

Phiên bản 1.3.0

Phiên bản 1.3.0

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

Phát hành androidx.annotation:annotation: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

  • Chú thích @Discouraged để đánh dấu các API không còn được dùng nữa nhưng có tác động tiêu cực đáng kể đến hiệu suất và không nên được gọi trong mã sản phẩm thông thường
  • Chú thích @Context để đánh dấu các Ngữ cảnh chung để nhà phát triển có thể di chuyển sang các API mới dễ dàng hơn
  • Chú thích @GravityInt để đánh dấu các phần tử có chứa giá trị trọng lực được gói thành số nguyên
  • Ngừng sử dụng @InspectableProperty và thay bằng @Attribute trong androidx.resourceinspection

Phiên bản 1.3.0-rc01

Ngày 27 tháng 10 năm 2021

Phát hành androidx.annotation:annotation:1.3.0-rc01. 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 29 tháng 9 năm 2021

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

Thay đổi về API

  • Yêu cầu nội dung giải thích trong 'thông báo' cho @Discouraged. (I3390f)
  • Thêm chú thích @Discouraged để đánh dấu các phần tử không được khuyến khích. (Ib2549)
  • Hiển thị chú thích RestrictTo từ cửa sổ bật lên tài liệu về Studio (Ie8e1a, b/183134648)

Sửa lỗi

  • Thêm chú thích Ngữ cảnh để đánh dấu Ngữ cảnh chung, nhờ đó, nhà phát triển có thể di chuyển sang các API mới dễ dàng hơn. (Ie581a)

Phiên bản 1.3.0-alpha01

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

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

Thay đổi về API

  • Ngừng sử dụng @InspectableProperty và thay bằng @Attribute trong androidx.resourceinspection. (Ic0eff)
  • Thêm chú thích @GravityInt để đánh dấu các phần tử có chứa giá trị trọng lực được gói thành số nguyên (Ifcaa4, b/180620048)

Annotation-Experimental Phiên bản 1.2.0

Phiên bản 1.2.0

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

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

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

Thư viện này hiện hướng đến cấp độ ngôn ngữ Java 8.

Phiên bản 1.2.0-rc01

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

Phát hành androidx.annotation:annotation-experimental:1.2.0-rc01. Phiên bản 1.2.0-rc01 chứa những cam kết này.

Không có thay đổi nào so với bản thử nghiệm.

Phiên bản 1.2.0-beta01

Ngày 17 tháng Mười một, 2021

androidx.annotation:annotation-experimental:1.2.0-beta01 đã phát hành. Phiên bản 1.2.0-beta01 chứa những cam kết này.

Thay đổi về API

Các API đã được hoàn tất cho phiên bản thử nghiệm.

Annotation-Experimental Phiên bản 1.2.0-alpha01

Ngày 30 tháng 6 năm 2021

Phát hành androidx.annotation:annotation-experimental: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ư viện hiện hướng đến cấp độ ngôn ngữ Java 8

Phiên bản 1.2.0

Phiên bản 1.2.0

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

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

Những thay đổi lớn kể từ phiên bản 1.1.0

  • Thêm chú thích @ChecksSdkIntAtLeast, có thể dùng để xác định các phương thức hoặc trường dùng để truy cập vào cổng ở cấp SDK và đáp ứng quy trình kiểm tra tìm lỗi mã nguồn cho NewApi.
  • Thêm chú thích @DoNotInline, được ghép nối với quy tắc Proguard để ngăn việc các thành viên được đưa vào cùng dòng trong quá trình tối ưu hoá.
  • Nhiều chú thích hiện được chú thích bằng @Documented để đảm bảo chúng nằm trong cùng tài liệu cho thành viên được chú thích.

Phiên bản 1.2.0-rc01

Ngày 24 tháng 2 năm 2021

Phát hành androidx.annotation:annotation:1.2.0-rc01. Phiên bản 1.2.0-rc01 chứa những cam kết này.

Phiên bản 1.2.0-beta01

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

Phát hành androidx.annotation:annotation:1.2.0-beta01. Phiên bản 1.2.0-beta01 chứa những cam kết này.

Thay đổi về API

  • Chú thích @DoNotInline mới hướng dẫn các trình tối ưu hoá mã (ví dụ: Proguard, R8) để không nằm trong cùng phương thức được chú thích. (I3dfe8, b/141326133)

Phiên bản 1.2.0-alpha01

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

Phát hành androidx.annotation:annotation: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 chú thích @ChecksSdkIntAtLeast. Thao tác này sẽ cho phép androidx và người dùng chú thích các phương thức và trường đại diện cho hoạt động kiểm tra SDK_INT. (I89a54, b/120255046)

Annotation-Experimental Phiên bản 1.1.0

Phiên bản 1.1.0

Ngày 7 tháng 4 năm 2021

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

Những thay đổi lớn kể từ phiên bản 1.0.0

  • Các chú thích thử nghiệm của Jetpack đã được viết lại trong Kotlin để hỗ trợ nhiều lớp đánh dấu và cải thiện hoạt động xử lý các mã lệnh không dùng nữa.
  • Chúng tôi đã thêm chú thích RequiresOptInOptIn để giống với Kotlin, đồng thời các chú thích ExperimentalUsesExperimental không còn được dùng nữa.

Phiên bản 1.1.0-rc02

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

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

Sửa lỗi

  • Thêm các quy tắc Proguard để đảm bảo rằng thao tác tối ưu hoá mã không cảnh báo về việc thiếu các chú thích meta Kotlin.

Phiên bản 1.1.0-rc01

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

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

Không có thay đổi nào kể từ bản phát hành thử nghiệm trước đó.

Phiên bản 1.1.0-beta01

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

Phát hành androidx.annotation:annotation-experimental:1.1.0-beta01. Phiên bản 1.1.0-beta01 chứa các thao tác lưu trữ thay đổi này.

Thay đổi về API

  • Biến thể androidx của chú thích Experimental không còn được dùng để cung cấp tính năng tương đương cho Kotlin. Chúng tôi đã thay thế nó bằng một biến thể androidx của chú thích RequiresOptIn và công cụ phân tích phát hiện lỗi sai cho Java đã được cập nhật để hỗ trợ cả chú thích Kotlin mới và biến thể androidx mới. (I52495, b/151331381)

Phiên bản 1.1.0-alpha01

Ngày 22 tháng 7 năm 2020

Phát hành androidx.annotation:annotation-experimental:1.1.0-alpha01. Phiên bản 1.1.0-alpha01 chứa những cam kết này.

Tính năng mới

  • Giờ đây, thư viện chú thích thử nghiệm được viết bằng Kotlin, nhưng không yêu cầu thêm thư viện chuẩn Kotlin làm phần phụ thuộc. Phần này bao gồm một tệp Proguard cho phép loại bỏ siêu dữ liệu Kotlin không cần thiết khỏi các dự án chỉ sử dụng ngôn ngữ lập trình Java.
  • @UseExperimental hiện hỗ trợ nhiều lớp đánh dấu (aosp/1185577, b/145137892)

Annotation-Experimental Phiên bản 1.0.0

Annotation-Experimental Phiên bản 1.0.0

Ngày 7 tháng 11 năm 2019

Phát hành androidx.annotation:annotation-experimental:1.0.0androidx.annotation:annotation-experimental-lint:1.0.0 mà không có thay đổi nào kể từ 1.0.0-rc01. 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

  • Thực thi dựa trên tìm lỗi mã nguồn của ngữ nghĩa Kotlin @Experimental trong mã nguồn Java
  • Các chú thích Java cung cấp hoạt động tương đương với các chú thích @Experimental@UseExperimental của Kotlin mà không cần đến phần phụ thuộc trên Kotlin

Annotation-Experimental Phiên bản 1.0.0-rc01

Ngày 23 tháng 10 năm 2019

Phát hành androidx.annotation:annotation-experimental:1.0.0-rc01androidx.annotation:annotation-experimental-lint:1.0.0-rc01. Phiên bản 1.0.0-rc01 bao gồm các thay đổi sau.

Lỗi đã biết

Khi sử dụng Studio 3.5 một cách ổn định, những cảnh báo từ trình phát hiện tìm lỗi mã nguồn sử dụng @Experimental sẽ không hiển thị trong IDE đối với các mục đích sử dụng Java không hợp lệ của chú thích @Experimental của Kotlin. Xem b/140640322.

Annotation-Experimental Phiên bản 1.0.0-beta01

Ngày 9 tháng 10 năm 2019

Phát hành androidx.annotation:annotation-experimental:1.0.0-beta01androidx.annotation:annotation-experimental-lint:1.0.0-beta01 mà không có thay đổi nào kể từ 1.0.0-alpha01. Phiên bản 1.0.0-beta01 bao gồm các thay đổi sau.

Annotation-Experimental Phiên bản 1.0.0-alpha01

Ngày 18 tháng 9 năm 2019

Phát hành androidx.annotation:annotation-experimental:1.0.0-alpha01androidx.annotation:annotation-experimental-lint:1.0.0-alpha01. Đây là các thay đổi có trong chú thích-thử nghiệm 1.0.0-alpha01 và đây là các thay đổi có trong annotation-experimental-lint 1.0.0-alpha01

Tính năng mới

  • Thư viện chú thích thử nghiệm Jetpack cung cấp hoạt động triển khai các điểm đánh dấu API thử nghiệm của Kotlin tương thích với Java. Cấu phần phần mềm -lint cung cấp hoạt động triển khai các giới hạn sử dụng thử nghiệm dựa trên tìm lỗi mã nguồn và thực thi các giới hạn sử dụng các điểm đánh dấu API thử nghiệm gốc của Kotlin của Java.

  • Khi sử dụng cấu phần phần mềm annotation-experimental làm phần phụ thuộc, các quy tắc tìm lỗi mã nguồn do cấu phần phần mềm annotation-experimental-lint cung cấp sẽ tự động được thực thi.

Phiên bản 1.1.0

Phiên bản 1.1.0

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

Phát hành androidx.annotation:annotation:1.1.0 mà không có thay đổi nào từ phiên bản 1.1.0-rc01.

Phiên bản 1.1.0-rc01

Ngày 7 tháng 5 năm 2019

Phát hành androidx.annotation:annotation:1.1.0-rc01 mà không có thay đổi nào kể từ 1.1.0-beta01. Bạn có thể xem các thay đổi trong phiên bản này tại đây.

Phiên bản 1.1.0-beta01

Ngày 3 tháng 4 năm 2019

Phát hành androidx.annotation:annotation:1.1.0-beta01. Bạn có thể xem các thay đổi trong phiên bản này tại đây.

Tính năng mới

  • Chú thích @InspectableProperty mới để hỗ trợ các API kiểm tra chế độ xem mới được thêm vào Android 10. Bạn có thể áp dụng chú thích này cho phương thức getter trên các chế độ xem hoặc các thành phần khác trên giao diện người dùng. Các công cụ tạo mã có thể sử dụng chú thích này để tạo các đối tượng đồng hành liên kết tên thuộc tính và mã nhận dạng thuộc tính với các giá trị thuộc tính mà không cần đến mức hao tổn phản ánh.

Thay đổi về API

  • Thay đổi có thể gây lỗi: @ContentView đã được thay đổi thành chú thích hàm khởi tạo và giá trị @LayoutRes đã bị xoá. Các lớp muốn hỗ trợ các chú thích @ContentView phải thêm chú thích này vào hàm khởi tạo có thông số @LayoutRes int. Cách này sẽ khắc phục được vấn đề khi sử dụng chú thích này trong các mô-đun thư viện. (b/128352521)

Phiên bản 1.1.0-alpha02

Ngày 13 tháng 3 năm 2019

Phát hành androidx.annotation:annotation:1.1.0-alpha02. Bạn có thể xem danh sách đầy đủ các thay đổi trong phiên bản này tại đây.

Tính năng mới

  • Phạm vi hạn chế API mới: RestrictTo.Scope.LIBRARY_GROUP_PREFIX. Phạm vi mới này hạn chế việc sử dụng để mã hoá trong các gói chứa các nhóm có cùng một tiền tố nhóm thư viện cho đến . cuối cùng (dấu chấm). Ví dụ: vì các thư viện foo.bar:lib1foo.baz:lib2 dùng chung tiền tố foo, nên các thư viện này có thể sử dụng các API của nhau bị giới hạn ở phạm vi này. Tương tự, đối với com.foo.bar:lib1com.foo.baz:lib2 dùng chung tiền tố com.foo. và có thể chia sẻ các API bị giới hạn trong phạm vi đó. Tuy nhiên, thư viện com.bar.qux:lib3 sẽ không thể sử dụng API bị giới hạn vì thư viện này chỉ dùng chung tiền tố com. mà không dùng cho đến . cuối cùng (dấu chấm).

Phiên bản 1.1.0-alpha01

Ngày 30 tháng 1 năm 2019

Phát hành androidx.annotation:annotation 1.1.0-alpha01.

Tính năng mới

  • Thêm chú thích @ContentView cho phép bạn chỉ định tệp XML bố cục nào sẽ được tăng cường. Việc này được hỗ trợ trong ComponentActivity ở phiên bản 1.0.0-alpha04Fragment trong bản phát hành 1.1.0-alpha04 lần lượt để thay thế cho việc sử dụng setContentView() hoặc ghi đè onCreateView(). (aosp/837619)

Phiên bản 1.0.2

Phiên bản 1.0.2

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

Phát hành androidx.annotation:annotation 1.0.2.

Sửa lỗi

  • Chỉnh sửa các quy tắc R8/ProGuard đã được nhúng vào JAR. Các thuộc tính này đã tham chiếu sai các loại android.support.annotation cũ thay vì androidx.annotation. Lưu ý: Điều này sẽ chỉ ảnh hưởng đến các bản dựng của bạn nếu bạn đã không sử dụng getDefaultProguardFile vì các quy tắc mặc định đó cũng bao gồm quy tắc chính xác cho cả hai gói. (aosp/891685)
  • Thêm quy tắc R8/ProGuard để lưu giữ rõ ràng chú thích @Keep. Điều này đảm bảo rằng ProGuard không xoá chú thích khỏi các loại trước khi thực sự tôn trọng ngữ nghĩa. Lưu ý: Điều này sẽ chỉ ảnh hưởng đến các bản dựng của bạn nếu bạn đã không sử dụng getDefaultProguardFile vì các quy tắc mặc định đó cũng bao gồm quy tắc chính xác cho cả hai gói. (aosp/903818)