Anotasi

  
Mengekspos metadata yang memudahkan alat dan developer lain memahami kode aplikasi Anda.

Tabel ini mencantumkan semua artefak dalam grup androidx.annotation.

Artefak Rilis Stabil Saat Ini Kandidat Rilis Berikutnya Rilis Beta Rilis Alfa
annotation 1.2.0 - - 1.3.0-alpha01
annotation-experimental 1.1.0 - - -
Library ini terakhir diperbarui pada: 24 Maret 2021

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada Annotation, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

Groovy

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

Kotlin

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

Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.

Masukan

Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau punya masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara pada masalah yang ada dengan mengklik tombol bintang.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

Versi 1.3.0

Versi 1.3.0-alpha01

24 Maret 2021

androidx.annotation:annotation:1.3.0-alpha01 dirilis. Versi 1.3.0-alpha01 berisi commit berikut.

Perubahan API

  • @InspectableProperty tidak digunakan lagi dan digantikan dengan @Attribute di androidx.resourceinspection. (Ic0eff)
  • Menambahkan anotasi @GravityInt untuk menandai elemen berisi nilai gravitasi yang disertakan ke dalam bilangan bulat. (Ifcaa4, b/180620048)

Versi 1.2.0

Versi 1.2.0

24 Maret 2021

androidx.annotation:annotation:1.2.0 dirilis. Versi 1.2.0 berisi commit berikut.

Perubahan utama sejak versi 1.1.0

  • Menambahkan anotasi @ChecksSdkIntAtLeast, yang dapat digunakan untuk mengidentifikasi metode atau kolom yang digunakan untuk membuka akses pada tingkat SDK dan memenuhi pemeriksaan lint NewApi.
  • Menambahkan anotasi @DoNotInline, yang disambungkan dengan aturan Proguard untuk mencegah anggota ditampilkan secara inline selama pengoptimalan.
  • Berbagai jenis anotasi kini dianotasikan dengan @Documented untuk memastikannya muncul dalam dokumentasi bagi anggota yang dianotasi.

Versi 1.2.0-rc01

24 Februari 2021

androidx.annotation:annotation:1.2.0-rc01 dirilis. Versi 1.2.0-rc01 berisi commit berikut ini.

Versi 1.2.0-beta01

13 Januari 2021

androidx.annotation:annotation:1.2.0-beta01 dirilis. Versi 1.2.0-beta01 berisi commit berikut.

Perubahan API

  • Anotasi @DoNotInline baru yang menginstruksikan pengoptimal kode (misalnya Proguard, R8) untuk tidak menyisipkan metode yang dianotasi. (I3dfe8, b/141326133)

Versi 1.2.0-alpha01

14 Mei 2020

androidx.annotation:annotation:1.2.0-alpha01 dirilis. Versi 1.2.0-alpha01 berisi commit berikut.

Fitur Baru

  • Menambahkan anotasi @ChecksSdkIntAtLeast. Ini memungkinkan androidx dan pengguna menganotasi metode dan kolom yang merepresentasikan pemeriksaan SDK_INT. (I89a54, b/120255046)

Annotation-Experimental Versi 1.1.0

Versi 1.1.0

7 April 2021

androidx.annotation:annotation-experimental:1.1.0 dirilis. Versi 1.1.0 berisi commit berikut ini.

Perubahan utama sejak versi 1.0.0

  • Anotasi eksperimental Jetpack telah ditulis ulang di Kotlin untuk memberikan dukungan bagi beberapa class penanda dan penanganan penghentian yang lebih baik.
  • Anotasi RequiresOptIn dan OptIn telah ditambahkan untuk paritas dengan Kotlin. Anotasi Experimental dan UsesExperimental tidak digunakan lagi.

Versi 1.1.0-rc02

24 Maret 2021

androidx.annotation:annotation-experimental:1.1.0-rc02 dirilis. Versi 1.1.0-rc02 berisi commit berikut ini.

Perbaikan Bug

  • Menambahkan aturan Proguard untuk memastikan bahwa pengoptimalan kode tidak memperingatkan hilangnya anotasi meta Kotlin

Versi 1.1.0-rc01

10 Maret 2021

androidx.annotation:annotation-experimental:1.1.0-rc01 dirilis. Versi 1.1.0-rc01 berisi commit berikut.

Tidak ada perubahan sejak rilis beta sebelumnya.

Versi 1.1.0-beta01

27 Januari 2021

androidx.annotation:annotation-experimental:1.1.0-beta01 dirilis. Versi 1.1.0-beta01 berisi commit berikut ini.

Perubahan API

  • Varian androidx dari anotasi Eksperimental tidak digunakan lagi untuk memberikan kesamaan dengan Kotlin. Diganti dengan varian androidx dari anotasi RequiresOptIn, dan linter Java telah diupdate untuk mendukung anotasi Kotlin baru dan varian androidx baru. (I52495, b/151331381)

Versi 1.1.0-alpha01

22 Juli 2020

androidx.annotation:annotation-experimental:1.1.0-alpha01 dirilis. Versi 1.1.0-alpha01 berisi commit berikut ini.

Fitur Baru

  • Sekarang library anotasi eksperimental ditulis dalam Kotlin, tetapi tidak mengharuskan library standar Kotlin untuk disertakan sebagai dependensi. Fitur ini meliputi file Proguard yang memungkinkan metadata Kotlin yang tidak perlu dihilangkan dari project yang hanya menggunakan bahasa pemrograman Java.
  • @UseExperimental sekarang mendukung beberapa class penanda (aosp/1185577, b/145137892)

Annotation-Experimental Versi 1.0.0

Annotation-Experimental Versi 1.0.0

7 November 2019

androidx.annotation:annotation-experimental:1.0.0 dan androidx.annotation:annotation-experimental-lint:1.0.0 dirilis tanpa perubahan sejak versi 1.0.0-rc01. Versi 1.0.0 berisi commit berikut.

Fitur utama 1.0.0

  • Pemberlakuan berbasis Lint dari semantik @Experimental Kotlin dalam kode sumber Java
  • Anotasi Java yang memberikan perilaku yang setara dengan anotasi @Experimental dan @UseExperimental Kotlin tanpa memerlukan dependensi pada Kotlin

Annotation-Experimental Versi 1.0.0-rc01

23 Oktober 2019

androidx.annotation:annotation-experimental:1.0.0-rc01 dan androidx.annotation:annotation-experimental-lint:1.0.0-rc01 dirilis. Versi 1.0.0-rc01 berisi commit berikut.

Masalah umum

Jika menggunakan Studio 3.5 stabil, peringatan dari detektor lint penggunaan @Experimental tidak ditampilkan dalam IDE untuk penggunaan Java yang tidak valid atas anotasi @Experimental Kotlin. Lihat b/140640322.

Annotation-Experimental Versi 1.0.0-beta01

9 Oktober 2019

androidx.annotation:annotation-experimental:1.0.0-beta01 dan androidx.annotation:annotation-experimental-lint:1.0.0-beta01 dirilis tanpa perubahan sejak versi 1.0.0-alpha01. Versi 1.0.0-beta01 berisi commit berikut.

Annotation-Experimental Versi 1.0.0-alpha01

18 September 2019

androidx.annotation:annotation-experimental:1.0.0-alpha01 dan androidx.annotation:annotation-experimental-lint:1.0.0-alpha01 dirilis. Ini adalah commit yang disertakan dalam annotation-experimental 1.0.0-alpha01, dan ini adalah commit yang disertakan dalam annotation-experimental-lint 1.0.0-alpha01

Fitur baru

  • Library anotasi Eksperimental Jetpack menyediakan implementasi yang kompatibel dengan Java untuk penanda API eksperimental Kotlin. Artefak -lint menyediakan penerapan berbasis Lint dari pembatasan penggunaan eksperimental dan memberlakukan pembatasan pada penggunaan Java atas penanda API eksperimental native Kotlin.

  • Saat menggunakan artefak annotation-experimental sebagai dependensi, aturan Lint yang diberikan oleh artefak annotation-experimental-lint akan diberlakukan secara otomatis.

Versi 1.1.0

Versi 1.1.0

5 Juni 2019

androidx.annotation:annotation:1.1.0 dirilis tanpa perubahan dari versi 1.1.0-rc01.

Versi 1.1.0-rc01

7 Mei 2019

androidx.annotation:annotation:1.1.0-rc01 dirilis tanpa perubahan dari 1.1.0-beta01. Commit yang disertakan dalam versi ini dapat dilihat di sini.

Versi 1.1.0-beta01

3 April 2019

androidx.annotation:annotation:1.1.0-beta01 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.

Fitur baru

  • Anotasi @InspectableProperty baru untuk mendukung API pemeriksaan tampilan baru yang ditambahkan di Android 10. Anotasi ini dapat diterapkan ke pengambil pada tampilan atau elemen UI lainnya. Fitur pembuatan kode dapat menggunakannya untuk membuat objek pendamping yang memetakan nama properti dan ID atribut ke nilai properti tanpa overhead pantulan.

Perubahan API

  • Perubahan yang dapat menyebabkan gangguan: @ContentView telah diubah menjadi anotasi konstruktor dan nilai @LayoutRes telah dihapus. Class yang ingin mendukung anotasi @ContentView harus menambahkan anotasi ini ke konstruktor yang menggunakan parameter @LayoutRes int. Perubahan ini memperbaiki masalah saat menggunakan anotasi ini dalam modul library. (b/128352521)

Versi 1.1.0-alpha02

13 Maret 2019

androidx.annotation:annotation:1.1.0-alpha02 dirilis. Daftar lengkap commit yang disertakan dalam versi ini dapat dilihat di sini.

Fitur baru

  • Cakupan pembatasan API baru: RestrictTo.Scope.LIBRARY_GROUP_PREFIX. Cakupan ini membatasi penggunaan pada kode dalam paket yang grupnya memiliki awalan grup library yang sama hingga . terakhir (titik). Misalnya, karena library foo.bar:lib1 dan foo.baz:lib2 memiliki awalan foo yang sama, keduanya dapat menggunakan API milik satu sama lain yang dibatasi pada cakupan ini. Demikian pula, com.foo.bar:lib1 dan com.foo.baz:lib2 memiliki awalan com.foo. yang sama dan dapat sama-sama menggunakan API yang dibatasi pada cakupan tersebut. Namun, library com.bar.qux:lib3 tidak akan dapat menggunakan API yang dibatasi karena hanya memiliki awalan com. yang sama dan tidak sepenuhnya sampai . terakhir (titik).

Versi 1.1.0-alpha01

30 Januari 2019

androidx.annotation:annotation 1.1.0-alpha01 dirilis.

Fitur baru

  • Menambahkan anotasi @ContentView yang memungkinkan Anda menunjukkan file XML tata letak yang harus di-inflate. Hal ini didukung di ComponentActivity dalam rilis 1.0.0-alpha04, dan Fragment dalam rilis 1.1.0-alpha04, sebagai alternatif untuk menggunakan setContentView() atau menggantikan onCreateView(), secara berurutan. (aosp/837619)

Versi 1.0.2

Versi 1.0.2

25 Februari 2019

androidx.annotation:annotation 1.0.2 dirilis.

Perbaikan bug

  • Memperbaiki aturan R8/ProGuard yang tersemat dalam jar. Sebelumnya, aturan ini salah merujuk pada jenis android.support.annotation lama, bukan androidx.annotation. Catatan: Perubahan ini hanya akan berdampak pada build Anda jika sebelumnya Anda tidak menggunakan getDefaultProguardFile karena aturan default tersebut juga menyertakan aturan yang benar untuk kedua paket. (aosp/891685)
  • Menambahkan aturan R8/ProGuard yang mempertahankan anotasi @Keep secara eksplisit. Aturan ini memastikan bahwa ProGuard tidak menghapus anotasi dari jenis sebelum benar-benar mematuhi semantiknya. Catatan: Perubahan ini hanya akan berdampak pada build Anda jika sebelumnya Anda tidak menggunakan getDefaultProguardFile karena aturan default tersebut juga menyertakan aturan yang benar untuk kedua paket. (aosp/903818)