Compose Compiler
Update Terbaru | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
---|---|---|---|---|
8 Februari 2023 | 1.4.2 | - | - | - |
Struktur
Compose adalah kombinasi 7 ID Grup Maven dalam androidx
. Setiap Grup
berisi subkumpulan fungsi yang ditargetkan, masing-masing dengan kumpulan catatan
rilisnya sendiri.
Tabel ini menjelaskan grup tersebut dan disertai link ke setiap kumpulan catatan rilis.
Grup | Deskripsi |
---|---|
compose.animation | Mem-build animasi di aplikasi Jetpack Compose untuk memperkaya pengalaman pengguna. |
compose.compiler | Mentransformasi fungsi @Composable dan mengaktifkan pengoptimalan dengan plugin compiler Kotlin. |
compose.foundation | Menulis aplikasi Jetpack Compose dengan elemen penyusun siap pakai dan memperluas dasar untuk mem-build bagian sistem desain Anda sendiri. |
compose.material | Mem-build UI Jetpack Compose dengan Komponen Desain Material siap pakai. Ini adalah titik entri pada tingkat yang lebih tinggi untuk Compose, yang dirancang untuk menyediakan komponen yang cocok dengan yang dijelaskan di www.material.io. |
compose.material3 | Mem-build UI Jetpack Compose dengan Komponen Desain Material 3, evolusi berikutnya dari Desain Material. Material 3 menyertakan tema dan komponen yang diperbarui serta fitur personalisasi Material You, seperti warna dinamis. Material 3 juga didesain agar selaras dengan gaya visual dan UI sistem Android 12 yang baru. |
compose.runtime | Elemen penyusun yang penting untuk model pemrograman dan pengelolaan status Compose, serta runtime inti untuk ditargetkan oleh Plugin Compose Compiler. |
compose.ui | Komponen dasar compose UI yang diperlukan untuk berinteraksi dengan perangkat, termasuk tata letak, gambar, dan input. |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada Compose, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk informasi selengkapnya.
Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle
bagi aplikasi atau modul Anda:
Groovy
android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.4.3" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.4.3" } kotlinOptions { jvmTarget = "1.8" } }
Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.
Masukan
Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.
Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.
Versi 1.4.2
Versi 1.4.2
8 Februari 2023
androidx.compose.compiler:compiler:1.4.2
dirilis. Versi 1.4.2 berisi commit ini.
Fitur Baru
- Dukungan untuk Kotlin 1.8.10
Perbaikan Bug
- Menambahkan grup dalam isi lambda yang tidak dapat dilewati untuk menghindari bug rekomposisi.
Versi 1.4.1
Versi 1.4.1
8 Februari 2023
androidx.compose.compiler:compiler:1.4.1
dirilis. Versi 1.4.1 berisi commit ini.
Perbaikan Bug
- Menonaktifkan pengoptimalan remember intrinsik yang sebelumnya telah memperkenalkan beberapa bug pembuatan kode.
- Menonaktifkan remember intrinsik dalam fungsi yang berisi parameter vararg.
- Memperbaiki tindakan melewatkan yang keliru dalam composable dengan parameter default
- Menambahkan pesan error penggantian defensif jika gagal memeriksa kompatibilitas Kotlin.
- Menghapus pembuatan kode yang terlewat dari lambda inline
Versi 1.4.0
17 Januari 2023
androidx.compose.compiler:compiler:1.4.0
dirilis. Versi 1.4.0 berisi commit ini.
Perubahan penting sejak versi 1.3.0
- Dukungan untuk Kotlin 1.8.0
- Menonaktifkan remember intrinsik
- Class data alat UI
Group
kini memiliki kolom,isInline
, yang menunjukkan apakah grup tersebut untuk panggilan ke fungsi composable inline. JikaisInline
adalahtrue
, maka panggilan tersebut untuk fungsi composable inline. Namun, nilainya mungkin salah (false) untuk panggilan ke fungsi composable inline yang berasal dari modul yang dikompilasi dengan versi plugin compiler compose yang tidak menghasilkan informasi fungsi inline. ImmutableCollection
dan elemen seinduk Persisten kini dianggap stabil.- Parameter baru di
AnimatedContent
untuk label alat - Memperbaiki pembuatan kode yang salah untuk lambda inline
Versi 1.4.0-alpha02
11 November 2022
androidx.compose.compiler:compiler:1.4.0-alpha02
dirilis. Versi 1.4.0-alpha02 berisi commit ini.
Fitur Baru
- Menambahkan dukungan untuk Kotlin
1.7.21
Versi 1.4.0-alpha01
9 November 2022
androidx.compose.compiler:compiler:1.4.0-alpha01
dirilis. Versi 1.4.0-alpha01 berisi commit ini.
Perbaikan Bug
- Memperbaiki kemampuan untuk menampilkan lebih awal dari fungsi composable inline (b/255350755)
- Memperbaiki bug dalam penurunan umpan yang merusak dukungan Kotlin/JS di Compose (6a40f8).
Versi 1.3
Versi 1.3.2
4 Oktober 2022
androidx.compose.compiler:compiler:1.3.2
dirilis. Versi 1.3.2 berisi commit ini.
Fitur Baru
- Versi ini mencakup update ke Kotlin 1.7.20
Versi 1.3.1
7 September 2022
androidx.compose.compiler:compiler:1.3.1
dirilis. Versi 1.3.1 berisi commit ini.
Perbaikan Bug
- Memperbaiki
IllegalStateException
saat Compose Compiler salah menandai jenis unit sebagai composable dalam beberapa situasi. (b/237863365) - Pengguna kini harus menentukan versi Kotlin pilihan mereka saat menyembunyikan pemeriksaan versi compiler (I9e5e2)
Versi 1.3.0
10 Agustus 2022
androidx.compose.compiler:compiler:1.3.0
dirilis. Versi 1.3.0 berisi commit ini.
Versi 1.3.0-rc02
3 Agustus 2022
androidx.compose.compiler:compiler:1.3.0-rc02
dirilis. Versi 1.3.0-rc02 berisi commit ini.
Versi 1.3.0-rc01
27 Juli 2022
androidx.compose.compiler:compiler:1.3.0-rc01
dirilis. Versi 1.3.0-rc01 berisi commit ini.
Versi 1.3.0-beta01
20 Juli 2022
androidx.compose.compiler:compiler:1.3.0-beta01
dirilis. Versi 1.3.0-beta01 berisi commit ini.
Fitur Baru
- Menambahkan dukungan untuk Kotlin
1.7.10
Versi 1.2
Versi 1.2.0
29 Juni 2022
androidx.compose.compiler:compiler:1.2.0
dirilis. Versi 1.2.0 berisi commit ini.
Perubahan penting sejak 1.1.0
- Dukungan untuk Kotlin 1.7.0
- Lihat postingan blog kami yang menjelaskan strategi Pembuatan Versi Compose Compiler baru di Compose.
Versi 1.2.0-rc02
22 Juni 2022
androidx.compose.compiler:compiler:1.2.0-rc02
dirilis. Versi 1.2.0-rc02 berisi commit ini.
Perbaikan Bug
- Menghapus pembuatan kode Peristiwa Rekaman Aktivitas composable (aosp/2127922)
Versi 1.2.0-rc01
15 Juni 2022
androidx.compose.compiler:compiler:1.2.0-rc01
dirilis. Versi 1.2.0-rc01 berisi commit ini.
Versi 1.2.0-beta03
1 Juni 2022
androidx.compose.compiler:compiler:1.2.0-beta03
dirilis. Versi 1.2.0-beta03 berisi commit ini.
Versi 1.2.0-beta02
18 Mei 2022
androidx.compose.compiler:compiler:1.2.0-beta02
dirilis. Versi 1.2.0-beta02 berisi commit ini.
Versi 1.2.0-beta01
11 Mei 2022
androidx.compose.compiler:compiler:1.2.0-beta01
dirilis. Versi 1.2.0-beta01 berisi commit ini.
- Ini adalah rilis beta pertama 1.2. Tidak ada perubahan sejak versi alfa terakhir.
Fitur Baru
- Menambahkan dukungan untuk Kotlin
1.6.21
Versi 1.2.0-alpha08
20 April 2022
androidx.compose.compiler:compiler:1.2.0-alpha08
dirilis. Versi 1.2.0-alpha08 berisi commit ini.
Versi 1.2.0-alpha07
6 April 2022
androidx.compose.compiler:compiler:1.2.0-alpha07
dirilis. Versi 1.2.0-alpha07 berisi commit ini.
Versi 1.2.0-alpha06
23 Maret 2022
androidx.compose.compiler:compiler:1.2.0-alpha06
dirilis. Versi 1.2.0-alpha06 berisi commit ini.
Versi 1.2.0-alpha05
9 Maret 2022
androidx.compose.compiler:compiler:1.2.0-alpha05
dirilis. Versi 1.2.0-alpha05 berisi commit ini.
Versi 1.2.0-alpha04
23 Februari 2022
androidx.compose.compiler:compiler:1.2.0-alpha04
dirilis. Versi 1.2.0-alpha04 berisi commit ini.
Versi 1.2.0-alpha03
9 Februari 2022
androidx.compose.compiler:compiler:1.2.0-alpha03
dirilis. Versi 1.2.0-alpha03 berisi commit ini.
Versi 1.2.0-alpha02
26 Januari 2022
androidx.compose.compiler:compiler:1.2.0-alpha02
dirilis. Versi 1.2.0-alpha02 berisi commit ini.
Versi 1.2.0-alpha01
12 Januari 2022
androidx.compose.compiler:compiler:1.2.0-alpha01
dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Fitur Baru
- Menambahkan dukungan untuk Kotlin
1.6.10
.
Versi 1.1
Versi 1.1.1
23 Februari 2022
androidx.compose.compiler:compiler:1.1.1
dirilis. Versi 1.1.1 berisi commit ini.
Perbaikan Bug
- Memperbaiki
NullPointerException
diandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
(aosp/1947059, b/206677462) - Memperbaiki error yang disebabkan oleh konten papan klip saat membaca dari papan klip di Android. (I06020, b/197769306)
- Memperbaiki RTL di
LazyVerticalGrid
(aosp/1931080, b/207510535)
Versi 1.1.0
9 Februari 2022
androidx.compose.compiler:compiler:1.1.0
dirilis. Versi 1.1.0 berisi commit ini.
Perubahan penting sejak versi 1.0.0
- Dukungan yang stabil untuk Efek overscroll Android 12
- Peningkatan penentuan ukuran target sentuh
- Perhatikan bahwa, sehubungan dengan Compose 1.0, komponen Material akan memperluas ruang tata letaknya untuk memenuhi panduan aksesibilitas Material terkait ukuran target sentuh. Misalnya, target sentuh Button akan diperluas hingga ukuran minimum
48x48dp
, meskipun Anda menyetel ukuran Button menjadi lebih kecil. Tindakan ini akan menyelaraskan Compose Material ke perilaku Komponen Desain Material yang sama, sehingga memberikan perilaku yang konsisten jika Anda menggabungkan Views dan Compose. Perubahan ini juga memastikan bahwa saat Anda membuat UI menggunakan komponen Compose Material, persyaratan minimum untuk aksesibilitas target sentuh akan terpenuhi. - Dukungan yang stabil untuk Navigation Rail
- Menstabilkan sejumlah API yang sebelumnya masih eksperimental
- Dukungan untuk versi Kotlin yang lebih baru
Versi 1.1.0-rc03
26 Januari 2022
androidx.compose.compiler:compiler:1.1.0-rc03
dirilis. Versi 1.1.0-rc03 berisi commit ini.
Perbaikan Bug
- Diupdate agar mendukung Compose Material 1.1.0-rc03
Versi 1.1.0-rc02
16 Desember 2021
androidx.compose.compiler:compiler:1.1.0-rc02
dirilis. Versi 1.1.0-rc02 berisi commit berikut ini.
Update dependensi
- Compose Compiler
1.1.0-rc02
kompatibel dengan Kotlin1.6.10
.
Versi 1.1.0-rc01
15 Desember 2021
androidx.compose.compiler:compiler:1.1.0-rc01
dirilis. Versi 1.1.0-rc01 berisi commit ini.
Perubahan dependensi
- Compose Compiler
1.1.0-rc01
kompatibel dengan Kotlin1.6.0
. Build
1.6.10
yang kompatibel tersedia melalui SNAPSHOT androidx.dev denganbuildId
8003490. Cuplikan dependensi berikut akan mengonfigurasi SNAPSHOT untuk Compose Compiler:Tambahkan cuplikan berikut ke file
build.gradle
root untuk project Anda:buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
Tambahkan cuplikan berikut ke file
build.gradle
untuk aplikasi atau modul yang menggunakan Compose:android { composeOptions { kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT" } }
Versi 1.1.0-beta04
1 Desember 2021
androidx.compose.compiler:compiler:1.1.0-beta04
dirilis. Versi 1.1.0-beta04 berisi commit ini.
Fitur Baru
- Diupdate agar kompatibel dengan Kotlin
1.6.0
Versi 1.1.0-beta03
17 November 2021
androidx.compose.compiler:compiler:1.1.0-beta03
dirilis. Versi 1.1.0-beta03 berisi commit ini.
Versi 1.1.0-beta02
3 November 2021
androidx.compose.compiler:compiler:1.1.0-beta02
dirilis. Versi 1.1.0-beta02 berisi commit ini.
Versi 1.1.0-beta01
27 Oktober 2021
androidx.compose.compiler:compiler:1.1.0-beta01
dirilis. Versi 1.1.0-beta01 berisi commit ini.
Versi 1.1.0-alpha06
13 Oktober 2021
androidx.compose.compiler:compiler:1.1.0-alpha06
dirilis. Versi 1.1.0-alpha06 berisi commit ini.
Versi 1.1.0-alpha05
29 September 2021
androidx.compose.compiler:compiler:1.1.0-alpha05
dirilis. Versi 1.1.0-alpha05 berisi commit ini.
Versi 1.1.0-alpha04
15 September 2021
androidx.compose.compiler:compiler:1.1.0-alpha04
dirilis. Versi 1.1.0-alpha04 berisi commit ini.
Versi 1.1.0-alpha03
1 September 2021
androidx.compose.compiler:compiler:1.1.0-alpha03
dirilis. Versi 1.1.0-alpha03 berisi commit ini.
Fitur Baru
- Compose Compiler kini mendukung versi Compose Runtime yang lebih lama (1.0). Sebelum perubahan ini, Compose Compiler hanya kompatibel dengan Compose Runtime versi yang sama atau yang lebih baru. Setelah perubahan ini, Compose Compiler kompatibel dengan versi Compose Runtime yang lebih lama (1.0). (aosp/1796968)
- Mengupdate Compose
1.1.0-alpha03
agar bergantung pada Kotlin1.5.30
. (I74545)
Versi 1.1.0-alpha02
18 Agustus 2021
androidx.compose.compiler:compiler:1.1.0-alpha02
dirilis. Versi 1.1.0-alpha02 berisi commit ini.
Versi 1.1.0-alpha01
4 Agustus 2021
androidx.compose.compiler:compiler:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Versi 1.0
Versi 1.0.5
3 November 2021
androidx.compose.compiler:compiler:1.0.5
dirilis. Versi 1.0.5 berisi commit ini.
Perbaikan Bug
- Memperbaiki instance derivedStateOf pelacakan error. (aosp/1792247)
Versi 1.0.4
13 Oktober 2021
androidx.compose.compiler:compiler:1.0.4
dirilis. Versi 1.0.4 berisi commit ini.
Update Dependensi
- Diupdate agar bergantung pada Kotlin
1.5.31
Versi 1.0.3
29 September 2021
androidx.compose.compiler:compiler:1.0.3
dirilis. Versi 1.0.3 berisi commit ini.
Update Dependensi
- Diupdate agar bergantung pada Kotlin
1.5.30
Versi 1.0.2
1 September 2021
androidx.compose.compiler:compiler:1.0.2
dirilis. Versi 1.0.2 berisi commit ini.
Diupdate untuk mendukung rilis Compose 1.0.2
. Compose 1.0.2
masih kompatibel dengan Kotlin 1.5.21
.
Versi 1.0.1
4 Agustus 2021
androidx.compose.compiler:compiler:1.0.1
dirilis. Versi 1.0.1 berisi commit ini.
Update Dependensi
- Diupdate agar bergantung pada Kotlin
1.5.21
.
Versi 1.0.0
28 Juli 2021
androidx.compose.compiler:compiler:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Fitur utama 1.0.0
Ini adalah rilis stabil pertama Compose. Lihat blog Rilis Compose resmi untuk mengetahui detail selengkapnya.
Versi 1.0.0-rc02
14 Juli 2021
androidx.compose.compiler:compiler:1.0.0-rc02
dirilis. Versi 1.0.0-rc02 berisi commit ini.
Versi 1.0.0-rc01
1 Juli 2021
androidx.compose.compiler:compiler:1.0.0-rc01
dirilis. Versi 1.0.0-rc01 berisi commit ini.
Versi 1.0.0-beta09
16 Juni 2021
androidx.compose.compiler:compiler:1.0.0-beta09
dirilis. Versi 1.0.0-beta09 berisi commit ini.
Versi 1.0.0-beta08
2 Juni 2021
androidx.compose.compiler:compiler:1.0.0-beta08
dirilis. Versi 1.0.0-beta08 berisi commit ini.
Versi 1.0.0-beta07
18 Mei 2021
androidx.compose.compiler:compiler:1.0.0-beta07
dirilis. Versi 1.0.0-beta07 berisi commit ini.
Versi 1.0.0-beta06
5 Mei 2021
androidx.compose.compiler:compiler:1.0.0-beta06
dirilis. Versi 1.0.0-beta06 berisi commit ini.
Versi 1.0.0-beta05
21 April 2021
androidx.compose.compiler:compiler:1.0.0-beta05
dirilis. Versi 1.0.0-beta05 berisi commit ini.
Versi 1.0.0-beta04
7 April 2021
androidx.compose.compiler:compiler:1.0.0-beta04
dirilis. Versi 1.0.0-beta04 berisi commit ini.
Versi 1.0.0-beta03
24 Maret 2021
androidx.compose.compiler:compiler:1.0.0-beta03
dirilis. Versi 1.0.0-beta03 berisi commit ini.
Versi 1.0.0-beta02
10 Maret 2021
androidx.compose.compiler:compiler:1.0.0-beta02
dirilis. Versi 1.0.0-beta02 berisi commit ini.
Versi 1.0.0-beta01
24 Februari 2021
androidx.compose.compiler:compiler:1.0.0-beta01
dirilis. Versi 1.0.0-beta01 berisi commit ini.
Ini adalah rilis pertama Compose 1.0.0 Beta.
Versi 1.0.0-alpha12
10 Februari 2021
androidx.compose.compiler:compiler:1.0.0-alpha12
dirilis. Versi 1.0.0-alpha12 berisi commit ini.
Versi 1.0.0-alpha11
28 Januari 2021
androidx.compose.compiler:compiler:1.0.0-alpha11
dirilis. Versi 1.0.0-alpha11 berisi commit ini.
Versi 1.0.0-alpha10
13 Januari 2021
androidx.compose.compiler:compiler:1.0.0-alpha10
dirilis. Versi 1.0.0-alpha10 berisi commit ini.
Versi 1.0.0-alpha09
16 Desember 2020
androidx.compose.compiler:compiler:1.0.0-alpha09
dirilis. Versi 1.0.0-alpha09 berisi commit ini.
Versi 1.0.0-alpha08
2 Desember 2020
androidx.compose.compiler:compiler:1.0.0-alpha08
dirilis. Versi 1.0.0-alpha08 berisi commit ini.
Versi 1.0.0-alpha07
11 November 2020
androidx.compose.compiler:compiler:1.0.0-alpha07
dirilis. Versi 1.0.0-alpha07 berisi commit ini.
Fitur Baru
- Inferensi & Propagasi Stabilitas. Plugin Compose Compiler akan menganalisis jenis yang dikompilasi untuk menyimpulkan apakah memenuhi syarat untuk pengoptimalan tertentu pada runtime. Inferensi hasil ini kemudian disintesis sebagai metadata ke dalam class untuk digunakan oleh compiler dalam modul lain. Selain itu, hasil runtime dari inferensi ini diteruskan dalam metadata yang diteruskan ke panggilan composable selama komposisi. Hal ini memerlukan protokol metadata yang berbeda untuk fungsi composable, yang berarti bahwa fungsi composable yang dikompilasi dengan compiler alpha07 tidak akan kompatibel secara biner dengan fungsi composable yang dikompilasi dengan versi compiler sebelumnya. (aosp/1431988)
Versi 1.0.0-alpha06
28 Oktober 2020
androidx.compose.compiler:compiler:1.0.0-alpha06
dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Versi 1.0.0-alpha05
14 Oktober 2020
androidx.compose.compiler:compiler:1.0.0-alpha05
dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Versi 1.0.0-alpha04
1 Oktober 2020
androidx.compose.compiler:compiler:1.0.0-alpha04
dirilis. Versi 1.0.0-alpha04 berisi commit ini.
androidx.compose:compose-compiler
telah difaktorkan ulang ke androidx.compose.compiler:compiler
.
Rilis ini merupakan rilis pertama di grup baru.