Appcompat
Update Terbaru | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
---|---|---|---|---|
29 Mei 2024 | 1.7.0 | - | - | - |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada Appcompat, 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 { def appcompat_version = "1.7.0" implementation "androidx.appcompat:appcompat:$appcompat_version" // For loading and tinting drawables on older versions of the platform implementation "androidx.appcompat:appcompat-resources:$appcompat_version" }
Kotlin
dependencies { val appcompat_version = "1.7.0" implementation("androidx.appcompat:appcompat:$appcompat_version") // For loading and tinting drawables on older versions of the platform implementation("androidx.appcompat:appcompat-resources:$appcompat_version") }
Untuk mengetahui 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.7
Versi 1.7.0
29 Mei 2024
androidx.appcompat:appcompat:1.7.0
dan androidx.appcompat:appcompat-resources:1.7.0
dirilis. Versi 1.7.0 berisi commit ini.
Perubahan penting sejak versi 1.6.0
AppCompatDialog
kini menetapkanLifecycleOwner
,SavedStateRegistryOwner
, danOnBackPressedDispatcherOwner
dengan benar pada tampilan dekorasi dialog melaluiViewTree
API, yang memperbaiki masalah saat menghostingComposeView
dalamAppCompatDialog
.AppCompatActivity
kini menetapkanViewTreeOnBackPressedDispatcherOwner
sehingga dispatcher dapat diambil dari tampilan.- Meningkatkan performa
SupportMenuInflater
secara signifikan. Locale.getDefault()
kini menampilkan lokalitas sistem setelah cold start.LinearLayoutCompat
sekarang mempertahankan parameter tata letak margin.
Update Dependensi
AppCompat
kini bergantung pada Activity 1.7.0.AppCompat
kini bergantung pada Fragment versi 1.5.4.
Versi 1.7.0-rc01
14 Mei 2024
androidx.appcompat:appcompat:1.7.0-rc01
dan androidx.appcompat:appcompat-resources:1.7.0-rc01
dirilis. Versi 1.7.0-rc01 berisi commit ini.
Versi 1.7.0-beta01
1 Mei 2024
androidx.appcompat:appcompat:1.7.0-beta01
dan androidx.appcompat:appcompat-resources:1.7.0-beta01
dirilis. Versi 1.7.0-beta01 berisi commit ini.
Versi 1.7.0-alpha03
26 Juli 2023
androidx.appcompat:appcompat:1.7.0-alpha03
dan androidx.appcompat:appcompat-resources:1.7.0-alpha03
dirilis. Versi 1.7.0-alpha03 berisi commit ini.
Fitur Baru
Dukungan untuk mendapatkan lokalitas per aplikasi dalam konteks non-Activity (I58e753). Empat API baru telah ditambahkan untuk fitur ini:
LocaleManagerCompat.getApplicationLocales()
: bagi developer untuk mendapatkan lokalitas per aplikasi di luar cakupan aktivitas.ContextCompat.getString()
: menampilkan string yang dilokalkan berdasarkan lokalitas per aplikasi.ContextCompat.getContextForLanguage()
: konteks yang ditampilkan oleh metode ini akan mengikuti lokalitas per aplikasi.ConfigurationCompat.setLocales()
: untuk API di atas, untuk menyetel lokalitas konfigurasi.
Perubahan API Lainnya
- Menambahkan
setLineHeight(unit, lineHeight)
ke class compatTextView
(Ia9fa9) - Menambahkan
setLineHeight(unit, lineHeight)
ke class compatTextView
(Ib2ee1) - Menambahkan
setLineHeight(unit, lineHeight)
ke class compatTextView
(I15716)
Perbaikan Bug
AppCompatDialog
kini menetapkanLifecycleOwner
,SavedStateRegistryOwner
, danOnBackPressedDispatcherOwner
dengan benar pada tampilan dekorasi dialog melaluiViewTree
API, yang memperbaiki masalah saat menghostingComposeView
dalamAppCompatDialog
.AppCompat
kini bergantung pada Activity 1.7.0. (Ib28ab, b/261314581)- Meningkatkan performa
SupportMenuInflater
secara signifikan (I0b087)
Versi 1.7.0-alpha02
8 Februari 2023
androidx.appcompat:appcompat:1.7.0-alpha02
dan androidx.appcompat:appcompat-resources:1.7.0-alpha02
dirilis. Versi 1.7.0-alpha02 berisi commit ini.
Perbaikan Bug
- Memperbaiki kebocoran memori pada
AppCompatDelegate.getLocaleManagerForApplication()
(44b57fd) AppCompat
kini bergantung pada Fragment versi 1.5.4 (I54dcd)
Versi 1.7.0-alpha01
5 Oktober 2022
androidx.appcompat:appcompat:1.7.0-alpha01
dan androidx.appcompat:appcompat-resources:1.7.0-alpha01
dirilis. Versi 1.7.0-alpha01 berisi commit ini.
Perbaikan Bug
AppCompatActivity
kini menetapkanViewTreeOnBackPressedDispatcherOwner
sehingga dispatcher dapat diambil dari tampilan. (I1a115, b/235416503)Locale.getDefault()
kini menampilkan lokalitas sistem setelah cold start (I6a94b)LinearLayoutCompat
sekarang mempertahankan parameter tata letak margin (Id2af4)
Versi 1.6.1
Versi 1.6.1
8 Februari 2023
androidx.appcompat:appcompat:1.6.1
dan androidx.appcompat:appcompat-resources:1.6.1
dirilis. Versi 1.6.1 berisi commit ini.
Perbaikan Bug
- Memperbaiki kebocoran memori pada
AppCompatDelegate.getLocaleManagerForApplication()
(44b57fd)
Versi 1.6.0
Versi 1.6.0
11 Januari 2023
androidx.appcompat:appcompat:1.6.0
dan androidx.appcompat:appcompat-resources:1.6.0
dirilis. Versi 1.6.0 berisi commit ini.
Perubahan penting sejak versi 1.5.0
- Menambahkan dukungan untuk menyesuaikan lokalitas aplikasi. Lihat
AppCompatDelegate.setApplicationLocales(LocaleListCompat)
untuk mengetahui informasi selengkapnya. Memberikan kompatibilitas mundur untuk API preferensi per bahasa baru yang tersedia di Android 13. - Update nullability agar selaras dengan SDK Android 13 (Tiramisu, API level 33).
- Menambahkan class compat
DrawableWrapper
,DrawableContainer
, danStateListDrawable
ke platform API publik
Versi 1.6.0-rc01
7 September 2022
androidx.appcompat:appcompat:1.6.0-rc01
dan androidx.appcompat:appcompat-resources:1.6.0-rc01
dirilis. Versi 1.6.0-rc01 berisi commit ini.
Perbaikan Bug
AppCompatActivity
kini menetapkanViewTreeOnBackPressedDispatcherOwner
sehingga dispatcher dapat diambil dari tampilan. (I1a115, b/235416503)- Mengembalikan perbaikan bug yang menimpa konfigurasi yang diteruskan ke
onConfigurationChanged
, yang menyebabkan masalah untuk pengujian yang memasukkan konfigurasi kustomnya sendiri melaluionConfigurationChanged
.
Versi 1.6.0-beta01
10 Agustus 2022
androidx.appcompat:appcompat:1.6.0-beta01
dan androidx.appcompat:appcompat-resources:1.6.0-beta01
dirilis. Versi 1.6.0-beta01 berisi commit ini.
Perubahan API
- Memindahkan class compat
DrawableWrapper
,DrawableContainer
, danStateListDrawable
ke API publik. (I37f3e, b/227789566) - Memperkenalkan factory baru untuk inflater tata letak asinkron. (Ia657b)
Perbaikan Bug
Toolbar
kini akan memanggilonPrepareMenu()
sebelum menu ditampilkan, bukan tanpa syarat, saat menu dibuat. (I2a58d, b/232206677)AppCompat
kini secara eksplisit bergantung padaLifecycle
2.5.1
danSavedState
1.2.0
. (I7e3e2)- Menambahkan dukungan untuk callback yang dipanggil kembali ke
AppCompatDelegate
dan implementasi Toolbar yang disediakanAppCompat
. (I24062) - Menyelesaikan
AppCompat
API untuk 1.5.0-beta01 (I2a43d, b/236866227) - Menyelesaikan
AppCompat
API untuk 1.5.0-beta01 (I2a43d, b/236866227)
Versi 1.6.0-alpha05
15 Juni 2022
androidx.appcompat:appcompat:1.6.0-alpha05
dan androidx.appcompat:appcompat-resources:1.6.0-alpha05
dirilis. Versi 1.6.0-alpha05 dikembangkan di cabang pra-rilis pribadi dan tidak memiliki commit publik.
Perubahan API
- Update nullability agar selaras dengan platform API yang telah diselesaikan di SDK Tiramisu Beta 3
minCompileSdk
kini menjadi 33 untuk menyesuaikan dengan SDK Tiramisu Beta 3
Versi 1.6.0-alpha04
18 Mei 2022
androidx.appcompat:appcompat:1.6.0-alpha04
dan androidx.appcompat:appcompat-resources:1.6.0-alpha04
dirilis. Library ini dikembangkan berdasarkan cabang pra-rilis pribadi sehingga log commit tidak tersedia.
Perubahan API
- Menambahkan API untuk mengganti pembatasan lebar SwitchCompat agar dapat digunakan oleh MDC-Android
Perbaikan Bug
- Menghindari konfigurasi terkelola saat perubahan konfigurasi di luar AttachBaseConfig
Versi 1.6.0-alpha03
27 April 2022
androidx.appcompat:appcompat:1.6.0-alpha03
dan androidx.appcompat:appcompat-resources:1.6.0-alpha03
dirilis.
Versi ini memerlukan Android 13 Beta 1 untuk dikompilasi dan runtime-nya tidak dijamin dapat kompatibel dengan pratinjau developer mendatang.
Fitur Baru
- Dukungan untuk pemilihan bahasa khusus di seluruh aplikasi melalui
AppCompatDelegate.setApplicationLocales()
. Mendelegasikan ke implementasi platform pada API 33 dan yang lebih baru.
Versi 1.6.0-alpha01
23 Februari 2022
androidx.appcompat:appcompat:1.6.0-alpha01
dan androidx.appcompat:appcompat-resources:1.6.0-alpha01
dirilis. Versi 1.6.0-alpha01 dibuat dari cabang internal dan tidak memiliki commit yang terlihat secara publik.
Versi ini memerlukan Android Tiramisu DP1 untuk dikompilasi dan runtime-nya tidak dijamin kompatibel dengan pratinjau developer di masa mendatang.
Fitur Baru
- Menambahkan dukungan untuk menyesuaikan lokalitas aplikasi. Lihat
AppCompatDelegate.setApplicationLocales(LocaleListCompat)
untuk mengetahui informasi selengkapnya. Memberikan kompatibilitas mundur untuk API preferensi per bahasa baru yang tersedia di Android 13.
Versi 1.5.1
Versi 1.5.1
7 September 2022
androidx.appcompat:appcompat:1.5.1
dan androidx.appcompat:appcompat-resources:1.5.1
dirilis. Versi 1.5.1 berisi commit ini.
Update Dependensi
AppCompat
kini secara eksplisit bergantung pada Lifecycle2.5.1
dan SavedState1.2.0
. (I7e3e2)
Versi 1.5.0
Versi 1.5.0
10 Agustus 2022
androidx.appcompat:appcompat:1.5.0
dan androidx.appcompat:appcompat-resources:1.5.0
dirilis. Versi 1.5.0 berisi commit ini.
Perubahan penting sejak versi 1.4.0
- Versi stabil ini mencakup peningkatan stabilitas mode malam, perbaikan bug, dan dukungan penambahan tint drawable compound untuk widget teks yang didukung AppCompat, serta peningkatan kegunaan API. Lihat catatan rilis seri 1.5.0 sebelumnya untuk daftar perubahan mendetail.
Versi 1.5.0-rc01
27 Juli 2022
androidx.appcompat:appcompat:1.5.0-rc01
dan androidx.appcompat:appcompat-resources:1.5.0-rc01
dirilis. Versi 1.5.0-rc01 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah saat wrapper konteks AppCompat menggunakan kembali implementasi resource pendukung konteks aplikasi, sehingga
uiMode
ditimpa pada konteks aplikasi. (Idf9d5)
Versi 1.5.0-beta01
13 Juli 2022
androidx.appcompat:appcompat:1.5.0-beta01
dan androidx.appcompat:appcompat-resources:1.5.0-beta01
dirilis. Versi 1.5.0-beta01 berisi commit ini.
Perubahan API
- Menambahkan flag yang dapat diganti untuk menonaktifkan penyesuaian lebar tombol default. (I37cb7)
- Menambahkan anotasi
@FloatRange
ke API pengambil posisi ibu jari (If524c) - Menambahkan anotasi nullability yang tidak ada ke
AnimatedStateListDrawableCompat
(Ieb4ec)
Perbaikan Bug
- Menyelesaikan
AppCompat
API untuk 1.5.0-beta01 (I2a43d, b/236866227) - Mengubah nilai
className
untukActionMenuItemView
agar memperlakukannya sebagaiButton
(I5ee1c)
Versi 1.5.0-alpha01
6 April 2022
androidx.appcompat:appcompat:1.5.0-alpha01
dan androidx.appcompat:appcompat-resources:1.5.0-alpha01
dirilis. Versi 1.5.0-alpha01 berisi commit ini.
Perubahan API
- Menambahkan API baru untuk menampilkan posisi ibu jari tombol akses ke subclass (I9bfb4)
- Mengupdate nullability agar cocok dengan Tiramisu DP2 (I0cbb7)
- Penambahan tint drawable compound yang di-backport ke widget yang diambil oleh TextView (Idf98c, b/165822337)
AppCompatDialog
kini memperluasComponentDialog
untuk kompatibilitas denganOnBackPressedDispatcher
(Id9b91, b/217620781)SearchView.onQueryRefine()
kini dilindungi visibilitas untuk memungkinkan penggantian (I6cce0, b/212882845)
Perbaikan Bug
Toolbar
AppCompat kini memanggilonPrepareMenu()
MenuHostHelper
API. (I9b9b5, b/227376894)AppCompatEditText
,AppCompatAutoCompleteEditText
,AppCompatMultiAutoCompleteEditText
tidak akan lagi mereset clickable atau longClickable di konstruktor saat ditetapkan dalam XML (Ic5066, b/221094907).AppCompatEditText
,AppCompatAutoCompleteTextView
, danAppCompatMultiAutoCompleteTextView
tidak akan memanggilsetKeyListener
yang diganti selama konstruktor (I5c13a, b/208480173)- Appcompat tidak akan menggabungkan instance
NumberKeyListener
yang diteruskan kesetKeyListener
, sehinggaTextView
dapat mengonfigurasi lokalitas dengan benar diNumberKeyListeners
(Ibf113, b/207119921 - Memperbaiki masalah dengan semua subclass
NumberKeyListener
yang diperkenalkan di AppCompat 1.4.0 yang memungkinkan karakter tidak terduga seperti tanda baca menjadi input (Iede7a, b/207119921)
Versi 1.4.2
Versi 1.4.2
1 Juni 2022
androidx.appcompat:appcompat:1.4.2
dan androidx.appcompat:appcompat-resources:1.4.2
dirilis. Versi 1.4.2 berisi commit ini.
Perbaikan Bug
- Memperbaiki error ketika
AppCompatDelegateImpl
melakukan panggilan internal keensureSubDecor
sebelum panel tindakan dibuat (aosp/2048349, b/226648941)
Versi 1.4.1
12 Januari 2022
androidx.appcompat:appcompat:1.4.1
dan androidx.appcompat:appcompat-resources:1.4.1
dirilis. Versi 1.4.1 berisi commit ini.
Perbaikan Bug
AppCompatEditText
,AppCompatAutoCompleteTextView
, danAppCompatMultiAutoCompleteTextView
tidak akan memanggilsetKeyListener
yang diganti selama konstruktor. (I5c13a, b/208480173)Emoji2
tidak akan menggabungkan instanceNumberKeyListener
, sehingga lokalitas dapat dikonfigurasi oleh textview.- Appcompat tidak akan menggabungkan instance
NumberKeyListener
yang diteruskan kesetKeyListener
, sehinggaTextView
dapat mengonfigurasi lokalitas dengan benar diNumberKeyListeners
. (Ibf113, b/207119921)
- Appcompat tidak akan menggabungkan instance
- Memperbaiki masalah dengan semua subclass
NumberKeyListener
yang diperkenalkan di appcompat 1.4.0 yang memungkinkan karakter tidak terduga seperti tanda baca menjadi input (b/207119921) (Iede7a, b/207119921)
Versi 1.4.0
Versi 1.4.0
17 November 2021
androidx.appcompat:appcompat:1.4.0
dan androidx.appcompat:appcompat-resources:1.4.0
dirilis. Versi 1.4.0 berisi commit ini.
Perubahan penting sejak versi 1.3.0
- Library kini menargetkan tingkat bahasa Java 8
- Dukungan emoji yang dapat diperbarui diaktifkan secara default melalui library androidx.emoji2
- Peningkatan inspeksi atribut di Layout Inspector Android Studio (I02d55)
- Menambahkan dukungan untuk resource tint bertingkat dan vektor drawable di backport pemuatan resource AppCompat. Namun, perlu diketahui bahwa ini berarti aplikasi tidak dapat mengganti getDrawable() pada objek Resource kustom saat backport diaktifkan. (Ia6b03, b/176129022)
- Latar belakang hasil backport yang dapat ditambahi tint dan tanda centang untuk CheckedTextView (I8575c)
Versi 1.4.0-rc01
27 Oktober 2021
androidx.appcompat:appcompat:1.4.0-rc01
dan androidx.appcompat:appcompat-resources:1.4.0-rc01
dirilis. Versi 1.4.0-rc01 berisi commit ini.
Versi 1.4.0-beta01
29 September 2021
androidx.appcompat:appcompat:1.4.0-beta01
dan androidx.appcompat:appcompat-resources:1.4.0-beta01
dirilis. Versi 1.4.0-beta01 berisi commit ini.
Perubahan API
Toolbar
AndroidX AppCompat kini menjadiMenuHost
dan dapat mengelolaMenuProvider
. (I5cd95)
Perbaikan Bug
- Memperbaiki penanganan status progres daftar lapisan AppCompatProgressBar (I6ece3, b/142004509)
- Mempertahankan
android:digits
dengan benar dalamAppCompatEditText
, sehingga akan memperbaiki bug 193047889 yang diperkenalkan di AppCompat 1.4.0-alpha03. (I4b4fc, b/193047889) - Mengintegrasikan SDK OnReceiveContentListener dan Support Library API. (Ic6914, b/173814913)
Versi 1.4.0-alpha03
30 Juni 2021
androidx.appcompat:appcompat:1.4.0-alpha03
dan androidx.appcompat:appcompat-resources:1.4.0-alpha03
dirilis. Versi 1.4.0-alpha03 berisi commit ini.
Fitur Baru
- Library kini menargetkan tingkat bahasa Java 8
- Menambahkan dukungan emoji2 untuk subclass TextView lainnya (
AppCompatMultiAutoCompleteTextView
,AppCompatAutoCompleteTextView
,AppCompatRadioButton
,AppCompatCheckBox
).
Perubahan API
- Menambahkan API untuk mengonfigurasi InputConnection agar menggunakan View.performReceiveContent untuk menangani panggilan IME ke InputConnection.commitContent. (I3a2ad)
- Menambahkan dukungan untuk EmojiCompat ke
AppCompatMultiAutoCompleteTextView
(Ifece0) - Menambahkan dukungan untuk EmojiCompat ke
AppCompatAutoCompleteTextView
(Ia1f4b) - Menambahkan dukungan untuk EmojiCompat ke
AppCompatRadioButton
(If08af) - Menambahkan dukungan untuk EmojiCompat ke
AppCompatCheckBox
(I2b3bc) - Mengizinkan
KeyListener
null diAppCompatEditText
. Tindakan ini akan membalikkan anotasi non-null yang ditambahkan ke AppCompatEditText dalam 1.4-alpha01 dan memulihkan perilaku sebelumnya saat menerima null. (I21482, b/189559345) - Menambahkan
PopupMenu.setForceShowIcon
untuk paritas dengan API platform (I43bb3, b/182789798)
Perbaikan Bug
- Memperbaiki bug di AppCompatEditText yang akan mereset inputType yang ditentukan dalam XML untuk menghapus variasi. Bug ini diperkenalkan di AppCompat 1.4.0-alpha01. (I9df36, b/191061070)
Versi 1.4.0-alpha02
2 Juni 2021
androidx.appcompat:appcompat:1.4.0-alpha02
dan androidx.appcompat:appcompat-resources:1.4.0-alpha02
dirilis. Versi 1.4.0-alpha02 berisi commit ini.
Perubahan API
- Menambahkan konstruktor
AppCompatDialogFragment
yang menggunakan ID tata letak (Icbf22, b/188119987) - Meningkatkan dukungan Layout Inspector (I02d55)
- Mengganti nama paket dalam
emoji2-views-helper
menjadiandroidx.emoji2.viewsintegration
. Ini adalah perubahan yang dapat menyebabkan gangguan pada AppCompat1.4.0-alpha01
, dan aplikasi harus memastikan dependensi AppCompat diperbarui untuk menggunakan versi emoji2 yang baru. (Ie8397)
Perbaikan Bug
- Memperbaiki masalah saat aktivitas yang dihentikan tidak menerima perubahan konfigurasi dari perubahan mode malam yang menggunakan AppCompat. (I8fa8f, b/188681415)
- Memperbaiki bug dalam
AppCompatEditText
yang menyebabkan tampilan dapat difokuskan bahkan saatandroid:focusable="false"
ditentukan dalam xml (bug yang ditemukan di AppCompat1.4.0-alpha01
) (Ib9412)
Versi 1.4.0-alpha01
18 Mei 2021
androidx.appcompat:appcompat:1.4.0-alpha01
dan androidx.appcompat:appcompat-resources:1.4.0-alpha01
dirilis. Versi 1.4.0-alpha01 berisi commit ini.
Perubahan API
- Mengintegrasikan dukungan EmojiCompat ke berbagai widget AppCompat (Id409b, If7a1a, Ic262d, Ib5f4a, I4fb3c)
- Menambahkan dukungan untuk resource tint bertingkat dan vektor drawable di backport pemuatan resource AppCompat. Namun, perlu diketahui bahwa ini berarti aplikasi tidak dapat mengganti
getDrawable()
pada objek Resource kustom saat backport diaktifkan. (Ia6b03, b/176129022) - Meningkatkan dukungan Layout Inspector (I6d771)
Perbaikan Bug
- Memperbaiki skenario ketika pemanggilan setSupportActionBar setelah menyetel callback jendela akan menimpa callback. (Ie43ee, b/186791590)
- Menambahkan solusi untuk masalah pada SDK 29 dan 30 yang menyebabkan resource ColorStateListDrawable yang di-clone dari cache drawable tidak memuat warna default hingga menerima perubahan status. (Iedb4b)
- Mencegah NPE saat menangani callback mode tindakan pemilihan kustom null pada tampilan yang didukung AppCompat. (I033c7, b/173435375)
Update Dependensi
- Dari AppCompat
1.5.0
: AppCompat kini bergantung pada Fragment1.3.4
. (I13089) - Dari AppCompat
1.5.0
: AppCompat kini bergantung pada Activity1.2.3
. (I815b7) - Dari AppCompat
1.5.0
: AppCompat kini bergantung pada Lifecycle2.3.1
. (Ia75a1)
Kontribusi Eksternal
- Latar belakang backport yang dapat ditambahi tint dan tanda centang untuk
CheckedTextView
(I8575c)
Versi 1.3.1
Versi 1.3.1
21 Juli 2021
androidx.appcompat:appcompat:1.3.1
dan androidx.appcompat:appcompat-resources:1.3.1
dirilis. Versi 1.3.1 berisi commit ini.
Update dependensi
- AppCompat kini bergantung pada Activity
1.2.4
dan Fragment1.3.6
, sehingga perbaikan dari rilis tersebut disertakan secara default saat menggunakan AppCompat1.3.1
. (I8fbec)
Versi 1.3.0
Versi 1.3.0
18 Mei 2021
androidx.appcompat:appcompat:1.3.0
dan androidx.appcompat:appcompat-resources:1.3.0
dirilis. Versi 1.3.0 berisi commit ini.
Perubahan penting sejak versi 1.2.0
- Memperbaiki propagasi atribut
android:theme
di seluruh tata letak<include>
di perangkat sebelum versi Lollipop - Mengurangi ukuran library dengan mengonversi banyak resource PNG ke VectorDrawables
- Menambahkan dukungan untuk peristiwa tarik lalu lepas ke
AppCompatEditText
denganOnReceiveContentListener
- Mengupdate untuk mendukung perubahan pada penanganan inset jendela Android 11
- Menambahkan dukungan untuk RTL dalam item menu dengan ikon
Menambahkan dukungan untuk menyisipkan konten lengkap (misalnya, menempelkan gambar) di
AppCompatEditText
Dependensi yang diupdate:
appcompat
mengupdate banyak dependensi transitifnya untuk mendukung fungsi dan perbaikan baru:- Mengupdate dari Fragment
1.1.0
ke Fragment1.3.4
- Mengupdate dari Activity 1.0.0 ke Activity
1.2.3
- Mengupdate dari Lifecycle
2.0.0
ke Lifecycle2.3.1
. - Mengupdate dari Core 1.3.0 ke Core
1.5.0
- Mengupdate dari Fragment
Versi 1.3.0-rc01
24 Maret 2021
androidx.appcompat:appcompat:1.3.0-rc01
dan androidx.appcompat:appcompat-resources:1.3.0-rc01
dirilis. Versi 1.3.0-rc01 berisi commit ini.
Perbaikan Bug
- Mencegah pencabutan izin lebih awal saat menangani penyisipan konten IME
Update Dependensi
- AppCompat sekarang bergantung pada Activity
1.2.2
, Fragment1.3.2
, dan Lifecycle2.3.1
. (Ia75a1)
Kontribusi Eksternal
- Perbaikan propagasi atribut
android:theme
di seluruh tata letak<include>
pada perangkat sebelum versi Lollipop (Simon Bergner di Opera)
Versi 1.3.0-beta01
13 Januari 2021
androidx.appcompat:appcompat:1.3.0-beta01
dan androidx.appcompat:appcompat-resources:1.3.0-beta01
dirilis. Versi 1.3.0-beta01 berisi commit ini.
Fitur Baru
- Drawable mode tindakan tingkat tema telah diganti dengan sumber vektor. Tindakan ini dapat menyebabkan sedikit perubahan pada tampilan visual setiap ikon. (I741a6)
Perubahan API
- Mengintegrasikan peristiwa tarik lalu lepas (peristiwa lepas) di AppCompatEditText dengan OnReceiveContentListener. (Ib26c9, b/175343405)
- Mengupdate
OnReceiveContentListener
dan API terkait. Lihat perubahan library androidx.core untuk detail selengkapnya. (Ib4616, b/173814913) - Memindahkan widget.RichContentReceiverCompat ke view.OnReceiveContentListener. (Ifdab7, b/173814913)
- API untuk menyediakan dan mengambil teks awal di sekitarnya telah di-backport ke
EditorInfoCompat
. Class ini memungkinkan aplikasi IME menghindari latensi IPC tambahan. (Ie3809)
Versi 1.3.0-alpha02
19 Agustus 2020
androidx.appcompat:appcompat:1.3.0-alpha02
dan androidx.appcompat:appcompat-resources:1.3.0-alpha02
dirilis. Versi 1.3.0-alpha02 berisi commit ini.
Perbaikan Bug
- Drawable PNG AppCompatRatingBar telah diganti dengan sumber vektor. Tindakan ini dapat menyebabkan sedikit perubahan pada tampilan visual setiap bintang. (I6b99d)
- Mengupdate WindowInsetsCompat ke API Android 11 (I3df9e)
- Mendukung RTL dalam item menu dengan ikon (I2f5c5)
Update Dependensi
- AppCompat telah mengupdate dependensinya dari Fragment
1.1.0
menjadi Fragment1.3.0-alpha08
. Sangat disarankan untuk membaca catatan rilis Fragment1.2.0
untuk memahami perubahan utama yang diperkenalkan dalam rilis Fragment sebelumnya. - AppCompat telah mengupdate dependensinya dari Activity
1.0.0
menjadi Activity1.2.0-alpha08
. Sangat disarankan untuk membaca catatan rilis Activity1.1.0
untuk memahami perubahan utama yang diperkenalkan dalam rilis Activity sebelumnya.AppCompatActivity
kini menggunakanOnContextAvailableListener
API yang diperkenalkan di Activity1.2.0-alpha08
untuk menyiapkanAppCompatDelegate
. Semua pemroses yang ditambahkan ke subclassAppCompatActivity
akan berjalan setelah pemroses ini. (I513da)
Versi 1.3.0-alpha01
20 Mei 2020
androidx.appcompat:appcompat:1.3.0-alpha01
dan androidx.appcompat:appcompat-resources:1.3.0-alpha01
dirilis. Versi 1.3.0-alpha01 berisi commit ini.
Fitur Baru
- Menambahkan aturan Lint baru untuk menandai panggilan ke setActionBar pada aktivitas yang memperluas AppCompatActivity
- Menambahkan dukungan untuk
ViewTreeLifecycleOwner
dari Lifecycle2.3.0-alpha01
,ViewTreeViewModelStoreOwner
dari Lifecycle2.3.0-alpha03
, danViewTreeSavedStateRegistryOwner
dari SavedState1.1.0-alpha01
saat menggunakanView
dalamAppCompatActivity
. (b/151603528, aosp/1300264) - Menambahkan API umum untuk menyisipkan konten lengkap (misalnya, menempelkan gambar). Callback baru menyediakan API tunggal yang dapat diimplementasikan aplikasi untuk mendukung berbagai cara menyisipkan konten lengkap. Untuk saat ini, API tersebut hanya ditambahkan ke
AppCompatEditText
dan akan dipanggil untuk jalur kode berikut:- tempel dari papan klip
- penyisipan konten dari IME (
InputConnection.commitContent
) (I22bf7)
Perbaikan Bug
- Dari AppCompat
1.2.0-rc01
: AppCompat tidak lagi memanggilonMenuOpened()
dengan menunull
. (b/142843126) - Menyelesaikan masalah link teks dan warna petunjuk dengan benar pada perangkat lama saat TextViewCompat.setTextAppearance dipanggil dengan gaya tampilan teks yang memiliki daftar status warna yang mereferensikan atribut warna tema (b/154702995)
Versi 1.2.0
Versi 1.2.0
5 Agustus 2020
androidx.appcompat:appcompat:1.2.0
dan androidx.appcompat:appcompat-resources:1.2.0
dirilis. Versi 1.2.0 berisi commit ini.
Perubahan utama sejak versi 1.1.0
- Memperbaiki dukungan untuk kasus penggunaan penggantian Configuration, termasuk lokalitas khusus dan skala font. Lihat di sini untuk mengetahui contoh cara mengimplementasikan penggantian dengan benar menggunakan
appcompat:1.2.0
. AppCompatDelegate.attachBaseContext()
tidak digunakan lagi. Jika Anda memanggil atau mengganti metode ini, gunakanAppCompatDelegate.attachBaseContext2()
.CollapsibleActionView
tidak digunakan lagi. Antarmuka ini tidak diperlukan lagi, gunakan antarmukaandroid.view.CollapsibleActionView
yang disediakan platform.
Versi 1.2.0-rc02
22 Juli 2020
androidx.appcompat:appcompat:1.2.0-rc02
dan androidx.appcompat:appcompat-resources:1.2.0-rc02
dirilis. Versi 1.2.0-rc02 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah terkait mode malam ketika pemanggilan
AppCompatDelegate.setDefaultNightMode
dari dialog terkadang gagal membuat ulang aktivitas dan menerapkan mode baru. (aosp/1348308, b/158923881)
Versi 1.2.0-rc01
14 Mei 2020
androidx.appcompat:appcompat:1.2.0-rc01
dan androidx.appcompat:appcompat-resources:1.2.0-rc01
dirilis. Versi 1.2.0-rc01 berisi commit ini.
Perubahan API
AppCompatDelegate.setLocalNightMode
telah ditandai sebagai memerlukan SDK versi 17 atau yang lebih baru karena masalah platform dengan perubahan konfigurasi yang bocor antara Activity di SDK versi sebelumnya
Perbaikan Bug
AppCompatDelegate.setLocalNightMode
kini dapat dipanggil sebelumActivity.attachBaseContext
- Memperbaiki penggunaan inset
ActionBarOverlayLayout
yang sebelumnya menggunakan inset cache secara tidak tepat - AppCompat tidak lagi memanggil
onMenuOpened()
dengan menunull
. (b/142843126)
Versi 1.2.0-beta01
1 April 2020
androidx.appcompat:appcompat:1.2.0-beta01
dan androidx.appcompat:appcompat-resources:1.2.0-beta01
dirilis. Versi 1.2.0-beta01 berisi commit ini.
Fitur Baru
- Menambahkan aturan lint baru berikut yang akan melaporkan penggunaan yang salah atas AppCompat dalam skenario berikut:
- Memuat daftar status warna: menyarankan penggunaan
ContextCompat
danAppCompatResources
API agar kompatibel dengan versi sebelumnya - Memuat drawable: menyarankan penggunaan
ContextCompat
danResourcesCompat
API agar kompatibel dengan versi sebelumnya - Menggunakan daftar status warna dengan atribut alfa: melaporkan atribut
android:alpha
yang tidak ada yang akan menyebabkan kesalahan tampilan pada beberapa versi platform - Menambahkan tint pada tampilan gambar: melaporkan tidak digunakannya
app:tint
yang akan menyebabkan kesalahan tampilan pada versi platform lama - Menggunakan gabungan drawable dan penambahan tint pada tampilan teks: menyarankan penggunaan atribut dan API compat agar kompatibel dengan versi sebelumnya
- Memuat daftar status warna: menyarankan penggunaan
Perbaikan Bug
- Memperbaiki masalah saat
ActionBarOverlayLayout
(tindakan dekorasi jendela) tidak mengirimkan WindowInsets dengan benar. - Memperbaiki masalah pada penambahan tint pada tampilan drawable dan teks pada versi platform lama
- Memperbaiki masalah saat
androidx.appcompat:appcompat:1.1.0
membuat error pada webview ketika webview ditekan lama (b/141351441) - Menerapkan perbaikan untuk masalah manipulasi konteks dasar dan pengambilan layanan sistem saat memulai aktivitas
Versi 1.2.0-alpha03
4 Maret 2020
androidx.appcompat:appcompat:1.2.0-alpha03
dan androidx.appcompat:appcompat-resources:1.2.0-alpha03
dirilis. Versi 1.2.0-alpha03 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah saat pelindung status mode tindakan diperluas dengan tidak semestinya ke dalam menu navigasi dan memiliki warna yang salah (Ia4a09)
- Memperbaiki masalah saat Activity yang dihentikan tidak dilanjutkan pada API Level 23 dan yang lebih lama (I45201)
Versi 1.2.0-alpha02
29 Januari 2020
androidx.appcompat:appcompat:1.2.0-alpha02
dan androidx.appcompat:appcompat-resources:1.2.0-alpha02
dirilis. Versi 1.2.0-alpha02 berisi commit ini.
Perbaikan bug
- Memperbaiki masalah saat appcompat 1.1.0 membuat error pada webview saat ditekan lama (b/141351441)
- Memperbaiki penambahan tint drawable pada TextView yang berhubungan dengan drawable compound pada API Level 23 (aosp/1172194)
- Memastikan konteks dasar selalu berupa wrapper (aosp/1194355)
- Menambahkan beberapa peningkatan agar lebih cerdas saat memodifikasi konfigurasi konteks dasar (aosp/1204543)
- Menonaktifkan
createConfigurationContext()
untuk Robolectric (aosp/1186218)
Versi 1.2.0-alpha01
4 Desember 2019
androidx.appcompat:appcompat:1.2.0-alpha01
dan androidx.appcompat:appcompat-resources:1.2.0-alpha01
dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Perbaikan bug
- Panggilan ke PackageManager.getActivityInfo tidak lagi error dalam mode ketat apabila pemeriksaan yang peka terhadap booting diaktifkan
- Perbaikan penambahan tint pada drawable di AppCompatButton
- Perbaikan untuk tampilan teks dan penambahan tint pada versi platform yang lebih lama
Versi 1.1.0
Versi 1.1.0
5 September 2019
androidx.appcompat:appcompat:1.1.0
dan androidx.appcompat:appcompat-resources:1.1.0
dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Perubahan penting sejak versi 1.0.0
- Perbaikan Mode Gelap:
MODE_NIGHT_AUTO
dan pengalihan gelap/terang berdasarkan waktu saat ini sekarang telah dihentikan. Pertimbangkan untuk menggunakan setelan eksplisit, atauMODE_NIGHT_AUTO_BATTERY
. - Activity 1.0:
AppCompatActivity
sekarang diperluas secara transitif dariComponentActivity
dari Activity1.0.0
melalui Fragment1.1.0
. Lihat catatan rilis terkait untuk informasi tentang perubahan dalam setiap library. - Konstruktor AppCompatActivity LayoutId: Subclass
AppCompatActivity
sekarang dapat secara opsional memanggil konstruktor diAppCompatActivity
yang menggunakan IDR.layout
, menunjukkan tata letak yang harus ditetapkan menjadi tampilan konten sebagai alternatif untuk memanggilsetContentView()
dionCreate()
. Perubahan ini tidak mengubah persyaratan bahwa subclass Anda memiliki konstruktor tanpa argumen.
Versi 1.1.0-rc01
2 Juli 2019
androidx.appcompat:appcompat:1.1.0-rc01
dan androidx.appcompat:appcompat-resources:1.1.0-rc01
dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Perbaikan bug
- DayNight sekarang mematuhi
configChanges
dengan benar (aosp/981105) - Hanya panggil
onConfigurationChanged
pada Activity yang dimulai (aosp/987483)
Versi 1.1.0-beta01
5 Juni 2019
androidx.appcompat:appcompat:1.1.0-beta01
dan androidx.appcompat:appcompat-resources:1.1.0-beta01
dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Perbaikan bug
- Memastikan kami merapikan receiver pada AppCompatDialogs (aosp/959376)
- Menambahkan dukungan untuk
buttonGravity=center_vertical
di Toolbar (b/130361721) - Memperbaiki offset horizontal indikator lingkaran berputar (b/79477181)
Versi 1.1.0-alpha05
7 Mei 2019
androidx.appcompat:appcompat:1.1.0-alpha05
dan androidx.appcompat:appcompat-resources:1.1.0-alpha05
dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Fitur baru
- setDefaultNightMode() sekarang otomatis membuat ulang aktivitas apa pun yang telah dimulai.
Perbaikan bug
- Berbagai perbaikan pada mode DayNight
- Membatalkan outline pada perubahan latar belakang apa pun di ActionBar
- Memperbaiki scroll widget indikator lingkaran berputar
- Memperbaiki latar belakang jendela set kustom yang diganti di AlertDialog
Versi 1.1.0-alpha04
3 April 2019
androidx.appcompat:appcompat:1.1.0-alpha04
dan androidx.appcompat:appcompat-resources:1.1.0-alpha04
dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Fitur baru
- Menambahkan kategori tema
ThemeOverlay.AppCompat.DayNight
baru. Tema tersebut harus digunakan saat menggunakan fitur DayNight.
Perubahan API
- AppCompatActivity sekarang berisi konstruktor kedua yang menggunakan
@LayoutRes int
, menggantikan perilaku sebelumnya yang menganotasi class AppCompatActivity dengan@ContentView
. Pendekatan ini bekerja dalam modul aplikasi dan library. (b/128352521)
Perbaikan bug
- Menetapkan dependensi internal ke versi stabil, jika memungkinkan
- Memperbaiki scroll
AppCompatSpinner
dalam mode drop-down (b/124274573) - Hanya memanggil
applyOverrideConfiguration()
jika diperlukan untuk DayNight
Versi 1.1.0-alpha03
13 Maret 2019
androidx.appcompat:appcompat:1.1.0-alpha03
dan androidx.appcompat:appcompat-resources:1.1.0-alpha03
dirilis. Rilis ini merupakan rilis pertama appcompat-resources
.
Daftar lengkap commit yang disertakan dalam versi ini dapat dilihat di sini.
Fitur baru
- Library appcompat-resources baru berisi API yang memungkinkan aplikasi untuk memuat dan menambah tint pada drawable (termasuk vektor drawable) pada versi platform yang lebih lama. Ini adalah fungsi yang sama yang sebelumnya menjadi bagian dari modul appcompat, tetapi sekarang tersedia tanpa overhead untuk backport appcompat penuh dari Desain material yang menyertakan widget, dialog, mode malam, dll.
- Perbaikan utama pada dukungan mode DayNight
- Opsi
MODE_NIGHT_AUTO_BATTERY
baru untuk mode DayNight - Penambahan tint drawable di
AppCompatTextView
- Overflow toolbar sekarang dapat disesuaikan dengan daftar status warna bertema
- Ikon menu sekarang dapat menggunakan warna yang mereferensikan atribut tema
- Atribut app:menu baru dapat ditetapkan di Toolbar untuk menyediakan konten menu pada inflation time
Perbaikan bug
- Memperbaiki mode tint default pada ImageView versi 21
- Memperbaiki kesalahan penutupan pop-up indikator lingkaran berputar saat perangkat diputar
- Memperbaiki DayNight yang tidak mengikuti
configChanges
dalam manifes - Memperbaiki peralihan ke
MODE_NIGHT_FOLLOW_SYSTEM
yang tidak berfungsi (b/111345020) - Memperbaiki WebView yang mereset Resource DayNight (b/37124582)
Versi 1.1.0-alpha02
7 Februari 2019
androidx.appcompat:appcompat 1.1.0-alpha02
dirilis.
Fitur baru
- Mengekstrak penanganan drawable khusus resource ke hook (aosp/870976)
- Mengizinkan
titleTextColor
dansubtitleTextColor
Toolbar untuk menggunakanColorStateList
dan menambahkan overloadColorStateList
dari metodesetTitleTextColor
dansetSubtitleTextColor
(aosp/867489)
Perbaikan bug
- Memperbaiki
fontFamily
yang tidak berfungsi sebelum API 24 (aosp/807054) - Memperbaiki bug yang menyebabkan
textFontWeight
tidak berfungsi saat aktivitas diperluas dariAppCompatActivity
(aosp/847640) - Memperbaiki bug yang menyebabkan teks judul pada pop-up widget indikator lingkaran berputar (saat menggunakan mode dialog) tidak menggunakan font yang ditentukan dalam
fontFamily
(aosp/789994) - Memperbaiki bug yang menyebabkan widget
AppCompatCheckBox
danAppCompatRadioButton
tidak dapat mengubah tint latar belakang aosp/825160) - Memperbaiki bug yang menyebabkan AppCompat tidak menggantikan
android: list styles
(aosp/862350)
Versi 1.1.0-alpha01
3 Desember 2018
Fitur baru
AppCompatTextView sekarang mendukung drawable compound
app:drawableLeftCompat
,app:drawableTopCompat
,app:drawableRightCompat
,app:drawableBottomCompat
,app:drawableStartCompat
, danapp:drawableEndCompat
, yang mendukung jenis drawable yang di-backport sepertiVectorDrawableCompat
.Drawable default
AppCompatCheckBox
danAppCompatRadioButton
sekarang menganimasikan perubahan status pemeriksaan.
Perubahan API
- aosp/740385: ActionBarOverlayLayout sekarang mengimplementasikan NestedScrollingParent2 dan NestedScrollingParent3, sehingga dapat memfasilitasi fungsi terbaru dalam scrolling bertingkat 3. Jika kode developer saat ini mengganti
ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int)
, kode tersebut mungkin tidak akan dipanggil lagi danActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[])
harus diganti.
Versi 1.0.2
Versi 1.0.2
7 November 2018
Rilis perbaikan bug core-1.0.1
dan appcompat-1.0.2
.
Perbaikan bug
- Memperbaiki bug yang menyebabkan
PrecomputedTextCompat
mengalami error saat digunakan denganAppCompatTextView
RTL. b/113070424
Versi 1.0.0
Versi 1.0.0
7 November 2018
Fitur baru
AnimatedStateListDrawableCompat
menyediakan transisi animasi di antara status drawable.