Aktivitas
| Update Terbaru | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
|---|---|---|---|---|
| 22 Oktober 2025 | 1.11.0 | - | 1.12.0-beta01 | - |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada Activity, 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 activity_version = "1.11.0" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
Kotlin
dependencies { val activity_version = "1.11.0" // Java language implementation implementation("androidx.activity:activity:$activity_version") // Kotlin implementation("androidx.activity:activity-ktx:$activity_version") }
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.12
Versi 1.12.0-beta01
22 Oktober 2025
androidx.activity:activity:1.12.0-beta01, androidx.activity:activity-compose:1.12.0-beta01, dan androidx.activity:activity-ktx:1.12.0-beta01 dirilis. Versi 1.12.0-beta01 berisi commit ini.
Perubahan API
- Memperkenalkan API
ActivityFlagseksperimental untuk mengelola perubahan dan migrasi perilaku runtime. Flag pertama memungkinkan pengurutan yang stabil untukOnBackPressedCallback, sehingga navigasi kembali lebih dapat diprediksi di seluruh perubahan siklus proses. Developer dapat memilih untuk tidak ikut serta dengan menyetelActivityFlags.isOnBackPressedLifecycleOrderMaintained = false. (I06bdf, Id08bb, I439aa, b/422730945, b/450533622)
Pembaruan Dependensi
- Memperbarui dependensi siklus proses ke 2.9.4 (Ic9fb2)
Versi 1.12.0-alpha09
24 September 2025
androidx.activity:activity:1.12.0-alpha09, androidx.activity:activity-compose:1.12.0-alpha09, dan androidx.activity:activity-ktx:1.12.0-alpha09 dirilis. Versi 1.12.0-alpha09 berisi commit ini.
Perubahan Dependensi
- Activity sekarang bergantung pada Navigation Event 1.0.0-alpha08.
Versi 1.12.0-alpha08
10 September 2025
androidx.activity:activity:1.12.0-alpha08, androidx.activity:activity-compose:1.12.0-alpha08, dan androidx.activity:activity-ktx:1.12.0-alpha08 dirilis. Versi 1.12.0-alpha08 berisi commit ini.
Pembaruan Dependensi
- Activity sekarang bergantung pada Navigation Event 1.0.0-alpha08.
Versi 1.12.0-alpha07
27 Agustus 2025
androidx.activity:activity:1.12.0-alpha07, androidx.activity:activity-compose:1.12.0-alpha07, dan androidx.activity:activity-ktx:1.12.0-alpha07 dirilis. Versi 1.12.0-alpha07 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah pada
EdgeToEdgedi API 35 saat tampilan yang tidak terlihat menyebabkan inset pengukuran yang tidak terduga. (If49ff)
Pembaruan Dependensi
- Activity sekarang bergantung pada Navigation Event
1.0.0-alpha07.
Versi 1.12.0-alpha06
13 Agustus 2025
androidx.activity:activity:1.12.0-alpha06, androidx.activity:activity-compose:1.12.0-alpha06, dan androidx.activity:activity-ktx:1.12.0-alpha06 dirilis. Versi 1.12.0-alpha06 berisi commit ini.
Pembaruan MinSdk
minSdkdefault untuk AndroidX telah dipindahkan dari API 21 ke API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
Pembaruan Dokumentasi
- Memperbarui KDocs untuk
PredictiveBackHandlerguna menjelaskan masalah pengaturan waktu yang diketahui, yaitu saatPredictiveBackHandlerdapat memproses gestur dalam frame yang sama saat dinonaktifkan. (I5be5c, b/431534103) - Memperbarui KDocs untuk
BackHandlerdanPredictiveBackHandleruntuk menyatakan secara eksplisit perilaku 'komposisi terakhir menang' selain merekomendasikan komposisi tanpa syarat dengan tandaenabled. (I7ab94)
Pembaruan dependensi
- Activity sekarang bergantung pada Navigation Event
1.0.0-alpha06.
Versi 1.12.0-alpha05
30 Juli 2025
androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05, dan androidx.activity:activity-ktx:1.12.0-alpha05 dirilis. Versi 1.12.0-alpha05 berisi commit ini.
Pembaruan Dependensi
- Activity sekarang bergantung pada Navigation Event
1.0.0-alpha05.
Versi 1.12.0-alpha04
2 Juli 2025
androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04, dan androidx.activity:activity-ktx:1.12.0-alpha04 dirilis. Versi 1.12.0-alpha04 berisi commit ini.
Perubahan Dependensi
- Activity sekarang bergantung pada NavigationEvent Alpha04
Versi 1.12.0-alpha03
18 Juni 2025
androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03, dan androidx.activity:activity-ktx:1.12.0-alpha03 dirilis. Versi 1.12.0-alpha03 berisi commit ini.
Perbaikan Bug
OnBackPressedDispatcherdanNavigationEventDispatcherkini diinisialisasi secara lambat diComponentActivity. (I710e6)Memperbaiki masalah terkait
OnBackPressedDistpatcheryang menyebabkan hal berikut:- Hanya dispatcher terbaru yang ditambahkan ke
OnBackPressedCallbackyang diberi tahu tentang status aktifnya (b/418715930) OnBackPressedDispatchermenghapus callback yang salah saat menggunakan fungsiaddCallbackyang mengambil siklus proses. (b/422714753)OnBackPressedDispatcher.remove()tidak menghapus semua instanceOnBackPressedCallbackyang terdaftar. (b/423024414)
- Hanya dispatcher terbaru yang ditambahkan ke
Versi 1.12.0-alpha02
4 Juni 2025
androidx.activity:activity:1.12.0-alpha02, androidx.activity:activity-compose:1.12.0-alpha02, dan androidx.activity:activity-ktx:1.12.0-alpha02 dirilis. Versi 1.12.0-alpha02 berisi commit ini.
Perbaikan Bug
- Dari NavigationEvent
1.0.0-alpha02: MemperbaikiConcurrentModificationExceptionyang dapat terjadi saatNavigationEventCallback.remove()dipanggil karena secara bersamaan mengubah daftar internal yang dapat ditutup. (I63066)
Versi 1.12.0-alpha01
20 Mei 2025
androidx.activity:activity:1.12.0-alpha01, androidx.activity:activity-compose:1.12.0-alpha01, dan androidx.activity:activity-ktx:1.12.0-alpha01 dirilis. Versi 1.12.0-alpha01 berisi commit ini.
Fitur Baru
ComponentActivitydanComponentDialogtelah diintegrasikan dengan NavigationEvent1.0.0-alpha01melaluiNavigationEventDispatcherOwnerAPI. Anda kini dapat mengambilNavigationEventDispatcherdariComponentActivitymelalui kolomnavigationEventDispatcher. KarenaOnBackPressedDispatchertelah ditulis ulang di atas library baru, semua penggunaan sebelumnya akan terus berfungsi dengan benar. Anda harus menggunakanNavigationEventDispatcherdanNavigationEventCallbackke depannya. (Ib8eed, I6cc44, Ib7724, I9a0f7,b/412597031, b/415028038, b/412596729, b/412597140, b/412596012)
Versi 1.11
Versi 1.11.0
10 September 2025
androidx.activity:activity:1.11.0, androidx.activity:activity-compose:1.11.0, dan androidx.activity:activity-ktx:1.11.0 dirilis. Versi 1.11.0 berisi commit ini.
Perubahan penting sejak versi 1.10.0:
- Menambahkan API
MediaCapabilitieskePickVisualMediaRequestagar aplikasi dapat menentukan kemampuan medianya, seperti Jenis HDR yang didukung. - Aktivitas kini dikompilasi dengan API 36.
Versi 1.11.0-rc01
23 April 2025
androidx.activity:activity:1.11.0-rc01, androidx.activity:activity-compose:1.11.0-rc01, dan androidx.activity:activity-ktx:1.11.0-rc01 dirilis. Versi 1.11.0-rc01 berisi commit ini.
Versi 1.11.0-beta01
9 April 2025
androidx.activity:activity:1.11.0-beta01, androidx.activity:activity-compose:1.11.0-beta01, dan androidx.activity:activity-ktx:1.11.0-beta01 dirilis. Versi 1.11.0-beta01 berisi commit ini.
Versi 1.11.0-alpha02
26 Maret 2025
androidx.activity:activity:1.11.0-alpha02, androidx.activity:activity-compose:1.11.0-alpha02, dan androidx.activity:activity-ktx:1.11.0-alpha02 dirilis. Versi 1.11.0-alpha02 berisi commit ini.
Perubahan API
- Mengintegrasikan
EDGE_NONEdanframeTimeMillisbaru dari Android 16 Beta03 ke dalamBackEventCompatyang disediakan oleh fungsihandleOnBackStarteddanhandleOnBackProgressedOnBackPressedCallback.
Update Dependensi
- Aktivitas kini dikompilasi dengan API 36. (I510e8, b/301910674)
Versi 1.11.0-alpha01
12 Maret 2025
androidx.activity:activity:1.11.0-alpha01, androidx.activity:activity-compose:1.11.0-alpha01, dan androidx.activity:activity-ktx:1.11.0-alpha01 dirilis. Versi 1.11.0-alpha01 berisi commit ini.
Fitur Baru
- Menambahkan API
MediaCapabilitieskePickVisualMediaRequestagar aplikasi dapat menentukan kemampuan medianya, seperti Jenis HDR yang didukung. (Ic3ee7)
Versi 1.10
Versi 1.10.1
26 Februari 2025
androidx.activity:activity:1.10.1, androidx.activity:activity-compose:1.10.1, dan androidx.activity:activity-ktx:1.10.1 dirilis. Versi 1.10.1 berisi commit ini.
Perbaikan Bug
ViewTreeOnBackPressedDispatcherOwnersdanFullyDrawnReporterOwnerskini dapat diselesaikan melalui induk yang tidak terkait dari tampilan, sepertiViewOverlay. Lihat catatan rilis core atau dokumentasi diViewTree.setViewTreeDisjointParentuntuk mengetahui informasi selengkapnya tentang induk tampilan terpisah. (Ie7750)
Versi 1.10.0
15 Januari 2025
androidx.activity:activity:1.10.0, androidx.activity:activity-compose:1.10.0, dan androidx.activity:activity-ktx:1.10.0 dirilis. Versi 1.10.0 berisi commit ini.
Perubahan penting sejak 1.9.0
PhotoPickerkini memungkinkan pemilihan gambar secara berurutan dan memilih tab mana (album atau gambar) yang harus terlihat pada awalnya.- Kontrak Activity Result
PickVisualMediadanPickMultipleVisualMediayang memicu Pemilih Foto tidak lagi mendelegasikan secara langsung ke layanan Google Play jika Pemilih Foto sistem tidak tersedia, tetapi menggunakan tindakanACTION_SYSTEM_FALLBACK_PICK_IMAGESpublik dan ekstra terkait untuk memberikan pengalaman Pemilih Foto yang konsisten kepada OEM dan aplikasi sistem sebagai penggantian. - Lokal komposisi
LocalActivitybaru yang menyediakanActivityuntuk cakupan saat ini, sehingga developer tidak perlu mendapatkanActivitydariLocalContext.
Versi 1.10.0-rc01
11 Desember 2024
androidx.activity:activity:1.10.0-rc01, androidx.activity:activity-compose:1.10.0-rc01, dan androidx.activity:activity-ktx:1.10.0-rc01 dirilis. Versi 1.10.0-rc01 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah yang menyebabkan perubahan status yang diaktifkan saat
PredictiveBackHandlersedang aktif akan langsung memutus callback. Sekarang, callback saat ini akan selesai, terlepas dari perubahan status yang diaktifkan. (Ib8719)
Versi 1.10.0-beta01
13 November 2024
androidx.activity:activity:1.10.0-beta01, androidx.activity:activity-compose:1.10.0-beta01, dan androidx.activity:activity-ktx:1.10.0-beta01 dirilis tanpa perubahan sejak versi alfa terakhir. Versi 1.10.0-beta01 berisi commit ini.
Versi 1.10.0-alpha03
30 Oktober 2024
androidx.activity:activity:1.10.0-alpha03, androidx.activity:activity-compose:1.10.0-alpha03, dan androidx.activity:activity-ktx:1.10.0-alpha03 dirilis. Versi 1.10.0-alpha03 berisi commit ini.
Perubahan API
- Menambahkan lokal komposisi
LocalActivitybaru yang menyediakanActivityuntuk cakupan saat ini, sehingga developer tidak perlu mendapatkanActivitydariLocalContext. Versi ini juga dilengkapi dengan aturan lint baru yang memeriksa saatLocalContextsalah ditransmisikan keActivity. (I7746a, b/283009666)
Perbaikan Bug
- Dari Activity
1.9.3:PredictiveBackHandlertidak akan lagi memicu callback setelah handler dinonaktifkan. Hal ini akan memperbaiki masalah saatNavHostdari Navigation Compose akan memunculkanIndexOutOfBoundsException. (I3f75e, b/365027664, b/340202286)
Pembaruan Dependensi
- Compose Aktivitas kini bergantung pada Compose Runtime 1.7.0 (I7746a, b/283009666)
Versi 1.10.0-alpha02
4 September 2024
androidx.activity:activity:1.10.0-alpha02, androidx.activity:activity-compose:1.10.0-alpha02, dan androidx.activity:activity-ktx:1.10.0-alpha02 dirilis. Versi 1.10.0-alpha02 berisi commit ini.
Perubahan Perilaku
- Kontrak Activity Result
PickVisualMediadanPickMultipleVisualMediayang memicu Pemilih Foto tidak lagi mendelegasikan secara langsung ke layanan Google Play jika Pemilih Foto sistem tidak tersedia, tetapi menggunakan tindakanACTION_SYSTEM_FALLBACK_PICK_IMAGESpublik dan ekstra terkait untuk memberikan pengalaman Pemilih Foto yang konsisten kepada OEM dan aplikasi sistem sebagai penggantian. Hal ini tidak akan memengaruhi pengalaman pengguna untuk perangkat yang memiliki layanan Google Play versi terbaru. (I3513d)
Perbaikan Bug
- Menghapus penentuan batas akses manual ke API platform baru karena hal ini terjadi secara otomatis melalui pemodelan API saat menggunakan R8 dengan AGP 7.3 atau yang lebih baru (misalnya, R8 versi 3.3) dan untuk semua build saat menggunakan AGP 8.1 atau yang lebih baru (misalnya, D8 versi 8.1). Klien yang tidak menggunakan AGP disarankan untuk mengupdate ke D8 versi 8.1 atau yang lebih baru. Baca artikel ini untuk informasi selengkapnya. (I9496c, b/345472586)
- Dari Activity
1.9.2: Memperbaiki masalah saat Activity ComposePredictiveBackHandlerAPI akan terus menangani gestur kembali sistem pada frame saat dinonaktifkan, yang dapat menyebabkan library seperti Navigation Compose menangani kembali meskipun dengan data sebelumnya yang kosong, sehingga menyebabkan errorIndexOutOfBoundsException. (Ie3301, b/340202286) - Dari Aktivitas
1.9.1: Memperbaiki masalah padaPredictiveBackHandleryang menyebabkan upaya untuk melakukanonBackPresseddariOnBackPressedDispatcherakan gagal setelah kembali ke sistem. (I5f1f8)
Versi 1.10.0-alpha01
26 Juni 2024
androidx.activity:activity:1.10.0-alpha01, androidx.activity:activity-compose:1.10.0-alpha01, dan androidx.activity:activity-ktx:1.10.0-alpha01 dirilis. Versi ini dikembangkan di cabang internal.
Fitur Baru
- Menambahkan dukungan untuk fitur
PhotoPickerbaru yang diperkenalkan di Android V, termasuk kemampuan untuk memilih gambar secara berurutan dan memilih tab mana (album atau gambar) yang harus terlihat pada awalnya.
Versi 1.9
Versi 1.9.3
16 Oktober 2024
androidx.activity:activity:1.9.3, androidx.activity:activity-compose:1.9.3, dan androidx.activity:activity-ktx:1.9.3 dirilis. Versi 1.9.3 berisi commit ini.
Perbaikan Bug
PredictiveBackHandlertidak akan lagi memicu callback setelah pengendali dinonaktifkan. Hal ini akan memperbaiki masalah saatNavHostdari Navigation Compose akan memunculkanIndexOutOfBoundsException. (I3f75e, b/340202286)
Versi 1.9.2
4 September 2024
androidx.activity:activity:1.9.2, androidx.activity:activity-compose:1.9.2, dan androidx.activity:activity-ktx:1.9.2 dirilis. Versi 1.9.2 berisi lthcocommits ini.
Perbaikan Bug
- Memperbaiki masalah saat API
PredictiveBackHandlerActivity Compose akan terus menangani gestur kembali sistem pada frame saat dinonaktifkan, yang dapat menyebabkan library seperti Navigation Compose menangani kembali meskipun dengan data sebelumnya kosong, sehingga menyebabkan errorIndexOutOfBoundsException. (Ie3301, b/340202286)
Versi 1.9.1
24 Juli 2024
androidx.activity:activity:1.9.1, androidx.activity:activity-compose:1.9.1, dan androidx.activity:activity-ktx:1.9.1 dirilis. Versi 1.9.1 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah pada
PredictiveBackHandlersaat setelah melakukan kembali sistem, upaya untuk melakukanonBackPresseddariOnBackPressedDispatcherakan gagal. (I5f1f8)
Versi 1.9.0
17 April 2024
androidx.activity:activity:1.9.0, androidx.activity:activity-compose:1.9.0, dan androidx.activity:activity-ktx:1.9.0 dirilis. Versi 1.9.0 berisi commit ini.
Perubahan penting sejak versi 1.8.0
ComponentActivitykini mengimplementasikanOnUserLeaveHintProvideruntuk memungkinkan komponen melakukan callback untuk peristiwaonUserLeaveHint.- API
OnBackPressedCallback,BackHandler, danPredictiveBackHandlerkini menampilkan peringatan saat memanggilonBackPressedDispatcher.onBackPressed()saat menangani kembali karena tindakan tersebut akan selalu merusak Animasi Kembali Prediktif. Lihat panduan praktik terbaik untuk mengetahui detail selengkapnya. - API Aktivitas lainnya telah ditulis ulang dalam Kotlin dan semua ekstensi yang sebelumnya tersedia di
activity-ktxtelah dipindahkan keactivity.activity-ktxkini benar-benar kosong.- Sebagai bagian dari konversi
ActivityResultLauncherke Kotlin, metodegetContractkini menjadi properti Kotlin abstrak. Ini adalah perubahan yang kompatibel dengan biner, tetapi dapat menyebabkan gangguan sumber jika implementasiActivityResultLauncherAnda ditulis di Kotlin.
- Sebagai bagian dari konversi
Versi 1.9.0-rc01
3 April 2024
androidx.activity:activity:1.9.0-rc01, androidx.activity:activity-compose:1.9.0-rc01, dan androidx.activity:activity-ktx:1.9.0-rc01 dirilis. Versi 1.9.0-rc01 berisi commit ini.
Pembaruan dependensi
- Activity sekarang bergantung pada Profile Installer 1.3.1.
Versi 1.9.0-beta01
20 Maret 2024
androidx.activity:activity:1.9.0-beta01, androidx.activity:activity-compose:1.9.0-beta01, dan androidx.activity:activity-ktx:1.9.0-beta01 dirilis. Versi 1.9.0-beta01 berisi commit ini.
Perbaikan Bug
- Memperbaiki regresi performa peluncuran Aktivitas yang diperkenalkan di Activity
1.9.0-alpha02yang disebabkan oleh pemanggilanOnBackPressedDispatchersebagai bagian dari pembuatan Aktivitas. (Ie75e3)
Versi 1.9.0-alpha03
7 Februari 2024
androidx.activity:activity:1.9.0-alpha03, androidx.activity:activity-compose:1.9.0-alpha03, dan androidx.activity:activity-ktx:1.9.0-alpha03 dirilis. Versi 1.9.0-alpha03 berisi commit ini.
Peringatan Lint
- API
OnBackPressedCallback,BackHandler, danPredictiveBackHandlerkini menampilkan peringatan saat memanggilonBackPressedDispatcher.onBackPressed()saat menangani kembali karena tindakan tersebut akan selalu merusak Animasi Kembali Prediktif. Lihat panduan praktik terbaik untuk mengetahui detail selengkapnya. (1e4222, 2c950d, b/287505200)
Perbaikan Bug
- Jika peristiwa kembali dikirim dari sistem yang dimulai selama Gestur Kembali Prediktif yang sudah berjalan, Gestur Kembali Prediktif yang sedang berjalan akan dibatalkan dan peristiwa kembali yang baru akan mengambil alih untuk memulai Gestur Kembali Prediktif yang baru. (I3482e)
- Memperbaiki error saat mengakses
onBackPressedDispatcherdariComponentActivityuntuk pertama kalinya dari thread latar belakang. Sekarang aman untuk mengaksesonBackPressedDispatcherdi thread mana pun. (I79955)
Versi 1.9.0-alpha02
24 Januari 2024
androidx.activity:activity:1.9.0-alpha02, androidx.activity:activity-compose:1.9.0-alpha02, dan androidx.activity:activity-ktx:1.9.0-alpha02 dirilis. Versi 1.9.0-alpha02 berisi commit ini.
Konversi Kotlin
ActivityResultRegistrytelah ditulis ulang di Kotlin. Tindakan ini memastikan bahwa nullability generik pada kontrak yang diteruskan keregisterakan diteruskan dengan benar keActivityResultLauncheryang dikembalikan kepada Anda. (I121f0)ActivityResulttelah ditulis ulang di Kotlin. Ekstensi KotlinActivityResultyang mendukung destrukturisasi ke kolomresultCodedandatatelah dipindahkan dariactivity-ktxkeactivity. (I0565a)- Ekstensi Kotlin
by viewModels()untukComponentActivitydantrackPipAnimationHintViewtelah dipindahkan dariactivity-ktxkeactivity. Artefakactivity-ktxkini sepenuhnya kosong. (I0a444)
Perbaikan Bug
- API
enableEdgeToEdgekini digambar di sekitar potongan layar. (a3644b, b/311173461) - Dari Activity
1.8.2: Memperbaiki ekstra yang diteruskan keACTION_SYSTEM_FALLBACK_PICK_IMAGESPhoto Picker Activity Contract agar meneruskan kunciEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAXdengan benar, bukan menggunakan ekstra dengan kunci"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". Sangat direkomendasikan jika Anda adalah OEM yang menerapkan Pemilih Foto penggantian sistem untuk mendukung kedua ekstra guna memastikan kompatibilitas terluas. (I96a00)
Versi 1.9.0-alpha01
29 November 2023
androidx.activity:activity:1.9.0-alpha01, androidx.activity:activity-compose:1.9.0-alpha01, dan androidx.activity:activity-ktx:1.9.0-alpha01 dirilis. Versi 1.9.0-alpha01 berisi commit ini.
Fitur Baru
ComponentActivitykini mengimplementasikanOnUserLeaveHintProvideruntuk memungkinkan komponen melakukan callback untuk peristiwaonUserLeaveHint. (I54892)
Perubahan API
ComponentActivitytelah ditulis ulang di Kotlin. (I14f31)ActivityResultCallertelah ditulis ulang di Kotlin. (Ib02e4)ActivityResultLaunchertelah ditulis ulang di Kotlin. Sebagai bagian dari konversi tersebut, metodegetContractkini menjadi properti Kotlin abstrak. Ini adalah perubahan yang kompatibel dengan biner, tetapi dapat menyebabkan gangguan sumber jika implementasiActivityResultLauncherAnda ditulis di Kotlin. (Id4615)PickVisualMediaRequestkini memiliki level API minimum yang sama, yaitu 19, dengan kontrak Hasil AktivitasPickVisualMedia. (Id6e21)
Pembaruan Dependensi
- Activity sekarang bergantung pada Core
1.13.0-alpha01. (I14f31)
Versi 1.8
Versi 1.8.2
13 Desember 2023
androidx.activity:activity:1.8.2, androidx.activity:activity-compose:1.8.2, dan androidx.activity:activity-ktx:1.8.2 dirilis. Versi 1.8.2 berisi commit ini.
Perbaikan Bug
- Memperbaiki ekstra yang diteruskan ke
ACTION_SYSTEM_FALLBACK_PICK_IMAGESKontrak Aktivitas Pemilih Foto agar meneruskan kunciEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAXdengan benar, bukan menggunakan ekstra dengan kunci"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". Sangat direkomendasikan jika Anda adalah OEM yang menerapkan Pemilih Foto penggantian sistem untuk mendukung kedua ekstra guna memastikan kompatibilitas terluas. (I96a00)
Versi 1.8.1
15 November 2023
androidx.activity:activity:1.8.1, androidx.activity:activity-compose:1.8.1, dan androidx.activity:activity-ktx:1.8.1 dirilis. Versi 1.8.1 berisi commit ini.
Perbaikan Bug
OnBackPressedDispatcherkini terus mengirim keOnBackPressedCallbackyang benar meskipun setelahOnBackPressedCallbackbaru ditambahkan saat gestur kembali sedang ditangani. (Id0ff6)
Versi 1.8.0
4 Oktober 2023
androidx.activity:activity:1.8.0, androidx.activity:activity-compose:1.8.0, dan androidx.activity:activity-ktx:1.8.0 dirilis. Versi 1.8.0 berisi commit ini.
Perubahan penting sejak versi 1.7.0
- Kembali Prediktif -
OnBackPressedCallbackkini menawarkan callback Kembali Prediktif baru untuk menangani gestur kembali yang dimulai, progres di seluruh gestur, dan gestur kembali yang dibatalkan selain callbackhandleOnBackPressed()sebelumnya saat gestur kembali dilakukan. Hal ini juga dilengkapi dengan ComposablePredictiveBackHandleruntuk menangani peristiwa gestur kembali prediktif di Activity Compose. Objek ini menyediakan Flow objek BackEventCompat yang harus dikumpulkan dalam lambda penangguhan yang Anda berikan:
PredictiveBackHandler { progress: Flow<BackEventCompat> ->
// code for gesture back started
try {
progress.collect { backEvent ->
// code for progress
}
// code for completion
} catch (e: CancellationException) {
// code for cancellation
}
}
ComponentActivity.onBackPressed() kini tidak digunakan lagi dan digantikan dengan API untuk menangani kembali. Developer kini harus menggunakan OnBackPressedDispatcher, bukan mengganti metode ini.
- EdgeToEdge -
ComponentActivity.enableEdgeToEdge()telah ditambahkan untuk memudahkan penyiapan tampilan layar penuh dengan cara yang kompatibel dengan versi lama.
Versi 1.8.0-rc01
20 September 2023
androidx.activity:activity:1.8.0-rc01, androidx.activity:activity-compose:1.8.0-rc01, dan androidx.activity:activity-ktx:1.8.0-rc01 dirilis. Versi 1.8.0-rc01 berisi commit ini.
Versi 1.8.0-beta01
6 September 2023
androidx.activity:activity:1.8.0-beta01, androidx.activity:activity-compose:1.8.0-beta01, dan androidx.activity:activity-ktx:1.8.0-beta01 dirilis. Versi 1.8.0-beta01 berisi commit ini.
Peningkatan Kualitas Dokumentasi
- Meningkatkan kualitas dokumentasi
BackEventCompat. (aosp/2722254)
Versi 1.8.0-alpha07
23 Agustus 2023
androidx.activity:activity:1.8.0-alpha07, androidx.activity:activity-compose:1.8.0-alpha07, dan androidx.activity:activity-ktx:1.8.0-alpha07 dirilis. Versi 1.8.0-alpha07 berisi commit ini.
Fitur Baru
Activity Compose telah menambahkan Composable
PredictiveBackHandlerbaru untuk menangani peristiwa gestur kembali prediktif. Fungsi ini menyediakanFlowobjekBackEventCompatyang harus dikumpulkan dalam lambda penangguhan yang Anda berikan:PredictiveBackHandler { progress: Flow<BackEventCompat> -> // code for gesture back started try { progress.collect { backEvent -> // code for progress } // code for completion } catch (e: CancellationException) { // code for cancellation } }Hal ini juga disertai dengan peringatan waktu kompilasi melalui aturan lint untuk memastikan panggilan
Flowmemanggilcollect(). (Id2773, b/294884345)onBackPressedDispatcherdiComponentActivitykini diinisialisasi secara lambat sehingga hanya dibuat saat diperlukan. (I0bf8e)
Perbaikan Bug
ComponentActivitytidak akan lagi menampilkan NPE di Android 13 saat mendapatkan callbackonBackPressed()dan Activity telah di-DESTROYED. (Idb055, b/291869278)- Menghapus penggunaan API
isAtLeastU()eksperimental (Ie9117, b/289269026)
Versi 1.8.0-alpha06
21 Juni 2023
androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06, dan androidx.activity:activity-ktx:1.8.0-alpha06 dirilis. Versi 1.8.0-alpha06 berisi commit ini.
Fitur Baru
OnBackPressedDispatcherkini membatalkan callback yang dihapus dengan benar selama Gestur Kembali Prediktif. (I3f90f)
Perubahan API
- Saat meneruskan
SystemBarStyle.autokeenableEdgeToEdgeAPI, Anda kini dapat mengganti parameter lambdadetectDarkModeuntuk memberikan logika kustom dalam mendeteksi mode malam. (aosp/2546393, b/278263793)
Versi 1.8.0-alpha05
7 Juni 2023
androidx.activity:activity:1.8.0-alpha05, androidx.activity:activity-compose:1.8.0-alpha05, dan androidx.activity:activity-ktx:1.8.0-alpha05 dirilis. Versi ini dikembangkan di cabang internal.
Perubahan API
- Activity kini menyediakan class
BackEventCompatyang berfungsi sebagai versiBackEventyang kompatibel dengan versi lama dan terpisah dari classBackEventframework. - Perubahan yang dapat menyebabkan gangguan: Metode
handleOnBackStarteddanhandleOnBackProgressedOnBackPressedCallbackkini menerima instanceandroidx.activity.BackEventCompat, bukan classandroid.window.BackEventframework.@VisibleForTestingAPI yang setara diOnBackPressedDispatcherjuga telah diupdate. - Konstruktor untuk
OnBackPressedDispatcherkini menggunakan instanceConsumer<Boolean>opsional yang memungkinkan pemilik dispatcher menerima callback setiap kali jumlah callback yang diaktifkan berubah dari nol menjadi bukan nol atau sebaliknya.
Perbaikan Bug
- Dari Activity
1.7.2: Memperbaiki errorReportDrawnsaat keluar dari layar sebelumreportdipanggil. (Ic46f1, b/260506820)
Versi 1.8.0-alpha04
10 Mei 2023
androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04, dan androidx.activity:activity-ktx:1.8.0-alpha04 dirilis. Versi ini dirilis dari cabang internal.
Perbaikan Bug
- Dari Activity 1.7.1: -
ReportFullyDrawExecutertidak lagi mengalami kebocoran saat menggunakanComponentActivitydenganActivityScenario. (Id2ff2, b/277434271)
Versi 1.8.0-alpha03
12 April 2023
androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03, dan androidx.activity:activity-ktx:1.8.0-alpha03 dirilis. Versi ini dirilis dari cabang internal.
Fitur Baru
- Menambahkan
ComponentActivity.setUpEdgeToEdge()untuk menyiapkan tampilan layar penuh dengan mudah secara kompatibel dengan versi lama.
Perubahan API
ComponentActivity.onBackPressed()kini tidak digunakan lagi dan digantikan dengan API untuk menangani kembali. Developer kini harus menggunakanOnBackPressedDispatcher, bukan mengganti metode ini. (Ibce2f, b/271596918)ComponentDialogdanComponentActivitykini berisi API publikinitViewTreeOwners()yang akan digunakan untuk menginisialisasi semua pemilik hierarki tampilan sebelum menyetel tampilan konten. (Ibdce0, b/261314581)
Perbaikan Bug
- Memperbaiki masalah saat Fragmen salah membatalkan MenuHost dan menyebabkan menu lain di Aktivitas berperilaku tidak terduga. (I9404e, b/244336571)
Perubahan Lainnya
ActivityResultRegisterkini menggunakanRandomKotlin, bukan Java. (I4d98f, b/272096025)
Versi 1.8.0-alpha02
8 Maret 2023
androidx.activity:activity:1.8.0-alpha02, androidx.activity:activity-compose:1.8.0-alpha02, dan androidx.activity:activity-ktx:1.8.0-alpha02 dirilis. Dikembangkan dari cabang internal.
Pembaruan dependensi
- Dari Activity
1.7.0-rc01: Activity sekarang bergantung padaLifecycle 2.6.0.
Versi 1.8.0-alpha01
8 Februari 2023
androidx.activity:activity:1.8.0-alpha01, androidx.activity:activity-compose:1.8.0-alpha01, dan androidx.activity:activity-ktx:1.8.0-alpha01 dirilis. Versi ini dibuat dari cabang internal.
Fitur Baru
- Class
OnBackPressedCallbackkini berisi callback progres Kembali Prediktif baru untuk menangani gestur kembali yang dimulai, progres di seluruh gestur, dan gestur kembali yang dibatalkan selain callbackhandleOnBackPressed()sebelumnya saat gestur kembali dilakukan.
Versi 1.7
Versi 1.7.2
24 Mei 2023
androidx.activity:activity:1.7.2, androidx.activity:activity-compose:1.7.2, dan androidx.activity:activity-ktx:1.7.2 dirilis. Versi 1.7.2 berisi commit ini.
Perbaikan Bug
- Memperbaiki error
ReportDrawnsaat keluar dari layar sebelumreportdipanggil. (Ic46f1, b/260506820)
Versi 1.7.1
19 April 2023
androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1, dan androidx.activity:activity-ktx:1.7.1 dirilis. Versi 1.7.1 berisi commit ini.
Perbaikan Bug
ReportFullyDrawExecutertidak lagi mengalami kebocoran saat menggunakanComponentActivitydenganActivityScenario. (Id2ff2, b/277434271)
Versi 1.7.0
22 Maret 2023
androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0, dan androidx.activity:activity-ktx:1.7.0 dirilis. Versi 1.7.0 berisi commit ini.
Perubahan penting sejak versi 1.6.0
- Kontrak aktivitas Pemilih Foto di
PickVisualMediadanPickMultipleVisualMediatelah diupdate untuk menyertakan penggantian tambahan saatMediaStore.ACTION_PICK_IMAGEStidak tersedia yang memungkinkan OEM dan aplikasi sistem, seperti layanan Google Play, memberikan pengalaman Pemilih Foto yang konsisten di berbagai perangkat Android dan level API dengan menerapkan tindakan penggantian. Pemilih Foto akan menggunakan penggantian ini jika tersedia sebelum melakukan penggantian untuk menggunakanIntent.ACTION_OPEN_DOCUMENT, yang tetap mendukung semua perangkat API 19 dan yang lebih tinggi. ComponentDialogsekarang mengimplementasikanSavedStateRegistryOwnerdan memiliki akses keSavedStateRegistry-nya sendiri serta menetapkanSavedStateRegistryOwneruntukViewTree-nya. Sekarang Anda dapat menggunakan Jetpack Compose dalamComponentDialogkarena memenuhiLifecycleOwnerdanSavedStateRegistryOwneryang dilampirkan ke Jendela melalui persyaratanViewTreeAPI.IntentSenderRequest.Builder.setFlags()kini memungkinkan Anda menetapkan beberapa tanda dariIntent, bukan hanya satu tanda.
Konversi Kotlin
Sejumlah class Aktivitas telah dikonversi ke Kotlin. Semua class yang dikonversi tetap mempertahankan kompatibilitas binernya dengan versi sebelumnya. Class berikut memiliki perubahan sumber yang tidak kompatibel untuk class yang ditulis di Kotlin: ActivityResultRegistryOwner, OnBackPressedDispatcherOwner.
Tabel di bawah memberikan konversi sumber untuk versi baru Aktivitas:
| Activity 1.5 | Activity 1.6 |
|---|---|
override fun getActivityResultRegistry() = activityResultRegistry |
override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher |
override val onBackPressedDispatcher = onBackPressedDispatcher |
Class ini juga dikonversi ke Kotlin, tetapi tetap kompatibel dengan sumber: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest, dan OnBackPressedDispatcher
FullyDrawnReporter API
ComponentActivity kini menyediakan instance FullyDrawnReporter yang memungkinkan beberapa komponen membuat laporan ketika komponen tersebut siap untuk berinteraksi. ComponentActivity akan menunggu semua komponen selesai sebelum memanggil reportFullyDrawn() untuk Anda. API ini menangani persyaratan waktu untuk Anda dan tidak perlu dipanggil sebagai bagian dari panggilan onDraw.
API ini disarankan agar dapat:
- Memberi sinyal ke Android Runtime saat proses startup selesai, untuk memastikan semua kode yang dijalankan selama urutan startup multi-frame disertakan dan diprioritaskan untuk kompilasi latar belakang.
- Memberi sinyal ke Macrobenchmark dan Play Vitals saat aplikasi Anda harus dianggap digambar sepenuhnya untuk metrik startup, sehingga Anda dapat melacak performa.
Tiga Activity Compose API telah ditambahkan agar lebih mudah menggunakan FullyDrawnReporter dari setiap composable:
ReportDrawnmenunjukkan bahwa composable Anda langsung siap untuk berinteraksi.ReportDrawnWhenmengambil predikat (yaitu,list.count > 0) untuk menunjukkan kapan composable Anda siap berinteraksi.ReportDrawnAftermenggunakan metode penangguhan yang, setelah selesai, menunjukkan bahwa Anda siap untuk berinteraksi.
Update Dependensi
- Activity sekarang bergantung pada Lifecycle
2.6.1. (8fc31d) - Activity sekarang bergantung pada ProfileInstaller
1.3.0. (83d3b1)
Versi 1.7.0-rc01
8 Maret 2023
androidx.activity:activity:1.7.0-rc01, androidx.activity:activity-compose:1.7.0-rc01, dan androidx.activity:activity-ktx:1.7.0-rc01 dirilis. Versi 1.7.0-rc01 berisi commit ini.
Pembaruan dependensi
- Activity sekarang bergantung pada
Lifecycle 2.6.0.
Versi 1.7.0-beta02
22 Februari 2023
androidx.activity:activity:1.7.0-beta02, androidx.activity:activity-compose:1.7.0-beta02, dan androidx.activity:activity-ktx:1.7.0-beta02 dirilis. Versi 1.7.0-beta02 berisi commit ini.
Perubahan API
- Tindakan dan ekstra yang digunakan oleh kontrak
PickVisualMediadanPickMultipleVisualMediasebagai penggantian saatMediaStore.ACTION_PICK_IMAGEStidak tersedia kini menjadi konstanta publik yang memberikan stabilitas API kepada OEM dan aplikasi sistem yang ingin memberikan pengalaman Pemilih Foto yang konsisten. Penerapan penggantian ini masih terbatas hanya untuk aplikasi sistem. (Icd320)
Versi 1.7.0-beta01
8 Februari 2023
androidx.activity:activity:1.7.0-beta01, androidx.activity:activity-compose:1.7.0-beta01, dan androidx.activity:activity-ktx:1.7.0-beta01 dirilis. Versi 1.7.0-beta01 berisi commit ini.
Fitur Baru
IntentSenderRequest.Builder.setFlags()kini memungkinkan Anda menetapkan beberapa tanda dariIntent, bukan hanya satu tanda. (Iac04c)
Perbaikan Bug
- Penggantian untuk
PickVisualMediasaat Pemilih Foto framework tidak tersedia kini membatasi penanganan dengan benar untuk aplikasi yang diinstal di image sistem perangkat. (If8ae6)
Konversi Kotlin
ActivityResultRegistryOwnerkini ditulis dalam Kotlin. Ini adalah perubahan sumber yang tidak kompatibel untuk class yang ditulis di Kotlin tersebut - Anda sekarang harus mengganti propertiactivityResultRegistry, bukan mengimplementasikan fungsigetActivityResultRegistry()sebelumnya. (I0b00e)OnBackPressedDispatcherOwnerkini ditulis dalam Kotlin. Ini adalah perubahan sumber yang tidak kompatibel untuk class yang ditulis di Kotlin tersebut - Anda sekarang harus mengganti propertionBackPressedDispatcher, bukan mengimplementasikan fungsigetOnBackPressedDispatchersebelumnya. (Ia277d)ContextAware,ContextAwareHelper,OnContextAvailableListener,IntentSenderRequest, danOnBackPressedDispatcherkini ditulis dalam Kotlin. (I1a73e, Iada92, aosp/2410754, I18ac7, b/257291701)
Versi 1.7.0-alpha04
25 Januari 2023
androidx.activity:activity:1.7.0-alpha04, androidx.activity:activity-compose:1.7.0-alpha04, dan androidx.activity:activity-ktx:1.7.0-alpha04 dirilis. Versi 1.7.0-alpha04 berisi commit ini.
Fitur Baru
- Kontrak Activity Result
PickVisualMediadanPickMultipleVisualMediakini akan menggunakan Pemilih Foto yang disediakan oleh layanan Google Play, jika ada, saat Pemilih Foto yang disediakan oleh sistem Android (misalnya,MediaStore.ACTION_PICK_IMAGES) tidak tersedia.isPhotoPickerAvailable()API yang hanya mendeteksi Pemilih Foto yang disediakan oleh sistem Android kini tidak digunakan lagi. Sebaiknya gunakanisPhotoPickerAvailable(Context)API baru, yang akan ditampilkan jika Pemilih Foto tersedia. (I55be6)
Versi 1.7.0-alpha03
11 Januari 2023
androidx.activity:activity:1.7.0-alpha03, androidx.activity:activity-compose:1.7.0-alpha03, dan androidx.activity:activity-ktx:1.7.0-alpha03 dirilis. Versi 1.7.0-alpha03 berisi commit ini.
Fitur Baru
ComponentDialogsekarang mengimplementasikanSavedStateRegistryOwnerdan memiliki akses keSavedStateRegistry-nya sendiri serta menetapkanSavedStateRegistryOwneruntuk ViewTree-nya. Sekarang Anda dapat menggunakan Jetpack Compose dalamComponentDialogkarena memenuhiLifecycleOwnerdanSavedStateRegistryOwneryang dilampirkan ke Jendela melalui persyaratan ViewTree API. (Idca17, I73468 b/261162296)
Perubahan API
- Menambahkan composable
ReportDrawnyang langsung menandai aktivitas sebagai siap memanggilreportFullyDrawn. (Ic5b14, b/259687964)
Konversi Kotlin
- Class
ActvitiyResultCallbackdanOnBackPressedCallbacktelah dikonversi ke Kotlin dengan tetap mempertahankan kompatibilitas sumber dan biner. (Ifc5e5, Ide1b0, b/257291701)
Versi 1.7.0-alpha02
24 Oktober 2022
androidx.activity:activity:1.7.0-alpha02, androidx.activity:activity-compose:1.7.0-alpha02, dan androidx.activity:activity-ktx:1.7.0-alpha02 dirilis. Versi 1.7.0-alpha02 berisi commit ini.
Perbaikan Bug
- Dari Activity
1.6.1: Memperbaiki masalah kontrak Activity ResultPickMultipleVisualMediayang tidak diluncurkan di perangkat Android R saat menggunakan nilai default untukmaxItems. (Ie2776, b/249182130)
Versi 1.7.0-alpha01
5 Oktober 2022
androidx.activity:activity:1.7.0-alpha01, androidx.activity:activity-compose:1.7.0-alpha01, dan androidx.activity:activity-ktx:1.7.0-alpha01 dirilis. Versi 1.7.0-alpha01 berisi commit ini.
FullyDrawnReporter API
ComponentActivity kini menyediakan instance FullyDrawnReporter yang memungkinkan beberapa komponen membuat laporan ketika komponen tersebut siap untuk berinteraksi. ComponentActivity akan menunggu semua komponen selesai sebelum memanggil reportFullyDrawn() untuk Anda. API ini menangani persyaratan waktu untuk Anda dan tidak perlu dipanggil sebagai bagian dari panggilan onDraw.
API ini disarankan agar dapat:
- Memberi sinyal ke Android Runtime saat proses startup selesai, untuk memastikan semua kode yang dijalankan selama urutan startup multi-frame disertakan dan diprioritaskan untuk kompilasi latar belakang.
- Memberi sinyal ke Macrobenchmark dan Play Vitals saat aplikasi Anda harus dianggap digambar sepenuhnya untuk metrik startup, sehingga Anda dapat melacak performa.
Dua Activity Compose API telah ditambahkan agar lebih mudah menggunakan FullyDrawnReporter dari setiap composable:
ReportDrawnWhenmengambil predikat (yaitu,list.count > 0) untuk menunjukkan kapan composable Anda siap berinteraksi.ReportDrawnAftermenggunakan metode penangguhan yang, setelah selesai, menunjukkan bahwa Anda siap untuk berinteraksi.
Versi 1.6.1
Versi 1.6.1
24 Oktober 2022
androidx.activity:activity:1.6.1, androidx.activity:activity-compose:1.6.1, dan androidx.activity:activity-ktx:1.6.1 dirilis. Versi 1.6.1 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah kontrak Activity Result
PickMultipleVisualMediayang tidak diluncurkan di perangkat Android R saat menggunakan nilai default untukmaxItems. (Ie2776, b/249182130)
Versi 1.6.0
Versi 1.6.0
21 September 2022
androidx.activity:activity:1.6.0, androidx.activity:activity-compose:1.6.0, dan androidx.activity:activity-ktx:1.6.0 dirilis. Versi 1.6.0 berisi commit ini.
Perubahan penting sejak versi 1.5.0
- Menambahkan
ActivityResultContracts.PickVisualMediadanActivityResultContracts.PickMultipleVisualMediauntuk memberikan kontrak yang kompatibel dengan versi sebelumnya yang menggunakanMediaStore.ACTION_PICK_IMAGESsaat Pemilih Foto tersedia danIntent.ACTION_OPEN_DOCUMENTsaat tidak tersedia. - Mengintegrasikan
OnBackInvokedCallbackdi Android 13 ke dalamOnBackPressedDispatchersyang disediakan olehComponentActivitydanComponentDialog. Tindakan ini memastikan bahwa semua API yang dibuat diOnBackPressedDispatcherberfungsi saat mengaktifkan gestur kembali prediktif.
Versi 1.6.0-rc02
7 September 2022
androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02, dan androidx.activity:activity-ktx:1.6.0-rc02 dirilis. Versi 1.6.0-rc02 berisi commit ini.
Perbaikan Bug
OnBackPressedDispatcherkini mendaftarkanOnBackInvokedCallbackdenganPRIORITY_DEFAULT, bukanPRIORITY_OVERLAY. (I3901f)- Class yang memperluas
ComponentActivitykini akan selalu mengirim kedua callbackonMultiWindowModeChanged(). (Ic4d85) ActivityResultRegistrytidak akan lagi menampilkan hasil keActivityResultCallbacksaat panggilanlaunchmenampilkanExceptionapa pun dan callback didaftarkan tanpaLifecycleOwner. (Ia7ff7, b/238350794)ComponentActivitykini akan mengirim panggilan menu dengan benar tanpa perlu memanggil fungsi super dalam aktivitas Anda. (Ie33c5, b/238057118)
Pembaruan Dependensi
- Library
Activitykini bergantung pada Lifecycle2.5.1. (If6697)
Versi 1.6.0-rc01
24 Agustus 2022
androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01, dan androidx.activity:activity-ktx:1.6.0-rc01 dirilis. Versi 1.6.0-rc01 berisi commit ini.
Perbaikan Bug
- Melakukan inisialisasi
OnBackPressedDispatchertidak akan lagi menyebabkanClassVerificationErrorsaat menggunakan versi SDK sebelum 33. (Ic32e1) - Class yang mengganti callback
onPictureInPictureModeChanged()ComponentActivitysekarang akan selalu dikirim callback-nya. (Ib7fdb)
Versi 1.6.0-beta01
10 Agustus 2022
androidx.activity:activity:1.6.0-beta01, androidx.activity:activity-compose:1.6.0-beta01, dan androidx.activity:activity-ktx:1.6.0-beta01 dirilis. Versi 1.6.0-beta01 berisi commit ini.
Perubahan API
- Menandai metode
startActivityForResultdanstartIntentSenderForResultyang sudah tidak digunakan lagi diComponentActivitydengan@NonNullkarena penerusannullselalu mengakibatkan error. (Id2a25, b/231476082)
Perbaikan Bug
- Dari Activity
1.5.1:ActivityResultRegistrytidak akan lagi menampilkan hasil keActivityResultCallbacksaat panggilanlaunchmenampilkanExceptionapa pun dan callback didaftarkan tanpaLifecycleOwner. (Ia7ff7, b/238350794) - Dari Activity
1.5.1:ComponentActivitykini akan mengirim panggilan menu dengan benar ke penggantianonPrepareOptionMenu(),onCreateOptionsMenu(), danonOptionsItemSelected()tanpa perlu memanggil fungsi super. (Ie33c5, b/238057118)
Pembaruan Dependensi
- Dari Activity
1.5.1: LibraryActivitykini bergantung padaLifecycleversi2.5.1. (If6697)
Versi 1.6.0-alpha05
15 Juni 2022
androidx.activity:activity:1.6.0-alpha05, androidx.activity:activity-compose:1.6.0-alpha05, dan androidx.activity:activity-ktx:1.6.0-alpha05 dirilis. Versi 1.6.0-alpha05 dikembangkan di cabang pra-rilis pribadi dan tidak memiliki commit publik.
Perubahan API
minCompileSdkkini menjadi 33 untuk menyesuaikan dengan SDK Tiramisu Beta 3
Perbaikan Bug
- Memperbaiki error pada perangkat lama saat melakukan pemeriksaan ekstensi SDK untuk
PickVisualMediaActivityResultContractsehingga kini berfungsi denganACTION_OPEN_DOCUMENTdi perangkat yang menjalankan Android 10 dan yang lebih lama.
Versi 1.6.0-alpha04
18 Mei 2022
androidx.activity:activity:1.6.0-alpha04 dan androidx.activity:activity-ktx:1.6.0-alpha04 dirilis.
Perbaikan Bug
- Memperbaiki error di
PickVisualMediaRequestsaat mencoba membuat permintaan, baik melalui Builder atau fungsi Kotlin level atas, akan menghasilkan stack overflow. - Mengintegrasikan
OnBackInvokedCallbackdi Dev Beta 2 Android 13 ke dalamOnBackPressedDispatcheryang disediakan olehComponentDialog. Tindakan ini memastikan bahwa semua API yang dibuat diOnBackPressedDispatcherberfungsi saat mengaktifkan gestur kembali prediktif.
Versi 1.6.0-alpha03
27 April 2022
androidx.activity:activity:1.6.0-alpha03, androidx.activity:activity-compose:1.6.0-alpha03, dan androidx.activity:activity-ktx:1.6.0-alpha03 dirilis.
- Catatan: Versi ini hanya akan melakukan kompilasi terhadap SDK Developer Beta 1 Android 13.
Fitur Baru
- Menambahkan
ActivityResultContracts.PickVisualMediadanActivityResultContracts.PickMultipleVisualMediauntuk memberikan kontrak yang kompatibel dengan versi sebelumnya yang menggunakanMediaStore.ACTION_PICK_IMAGESsaat Pemilih Foto tersedia danIntent.ACTION_OPEN_DOCUMENTsaat tidak tersedia. - Mengintegrasikan
OnBackInvokedCallbackdi Dev Beta 1 Android 13 ke dalamOnBackPressedDispatcheryang disediakan olehComponentActivity. Tindakan ini memastikan bahwa semua API yang dibuat diOnBackPressedDispatcherberfungsi saat mengaktifkan gestur kembali prediktif.
Versi 1.6.0-alpha01
23 Maret 2022
androidx.activity:activity:1.6.0-alpha01, androidx.activity:activity-compose:1.6.0-alpha01, dan androidx.activity:activity-ktx:1.6.0-alpha01 dirilis.
- Catatan: Versi ini hanya akan melakukan kompilasi terhadap SDK Pratinjau Developer 2 Android 13.
Fitur Baru
- Mengintegrasikan perubahan di Pratinjau Dev 2 Android 13 ke dalam
ComponentActivity.
Versi 1.5.1
Versi 1.5.1
27 Juli 2022
androidx.activity:activity:1.5.1, androidx.activity:activity-compose:1.5.1, dan androidx.activity:activity-ktx:1.5.1 dirilis. Versi 1.5.1 berisi commit ini.
Perbaikan Bug
ActivityResultRegistrytidak akan lagi menampilkan hasil keActivityResultCallbacksaat panggilanlaunch()menampilkanExceptionapa pun dan callback didaftarkan tanpaLifecycleOwner. (Ia7ff7, b/238350794)ComponentActivitysekarang akan mengirim panggilan menu dengan benar ke penggantianonPrepareOptionMenu(),onCreateOptionsMenu(), danonOptionsItemSelected()tanpa perlu memanggil fungsi super. (Ie33c5, b/238057118)
Pembaruan dependensi
- Library
Activitykini bergantung pada Lifecycle2.5.1. (If6697)
Versi 1.5.0
Versi 1.5.0
29 Juni 2022
androidx.activity:activity:1.5.0, androidx.activity:activity-compose:1.5.0, dan androidx.activity:activity-ktx:1.5.0 dirilis. Versi 1.5.0 berisi commit ini.
Perubahan penting sejak versi 1.4.0
- ComponentDialog -
ComponentDialogadalah subclassDialogyang menyertakanOnBackPressedDispatcheryang akan dipanggil saat tombol kembali sistem ditekan ketika dialog terlihat. Yang penting, subclass ini juga menyetelViewTreeOnBackPressedDispatcherOwner, yang memungkinkan tampilan dengan cara umum untuk mengambil dispatcher yang benar baik yang ada diComponentActivityatauComponentDialog. - Antarmuka Callback -
ComponentActivitykini mengimplementasikan serangkaian antarmuka callback modular yang dapat digunakan sebagai ganti callbackActivity. Antarmuka ini mencakup hal berikut:OnNewIntentProvider,OnConfigurationChangedProvider,OnTrimMemoryProvider,OnPictureInPictureModeChangedProvider,OnMultiWindowModeChangedProvider - Integrasi CreationExtras -
ComponentActivitykini memiliki kemampuan untuk menyediakanViewModelProvider.Factorystateless melaluiCreationExtrasLifecycle2.5.0.
Perubahan lainnya
- Konstruktor tanpa parameter untuk
ActivityResultContracts.CreateDocumentsudah tidak digunakan lagi dan diganti dengan konstruktor baru yang menggunakan jenis MIME konkret (misalnya, "image/png") sebagaimana diperlukan olehIntent.ACTION_CREATE_DOCUMENT.
Versi 1.5.0-rc01
11 Mei 2022
androidx.activity:activity:1.5.0-rc01, androidx.activity:activity-compose:1.5.0-rc01, dan androidx.activity:activity-ktx:1.5.0-rc01 dirilis tanpa perubahan dari versi 1.5.0-beta01. Versi 1.5.0-rc01 berisi commit ini.
Versi 1.5.0-beta01
20 April 2022
androidx.activity:activity:1.5.0-beta01, androidx.activity:activity-compose:1.5.0-beta01, dan androidx.activity:activity-ktx:1.5.0-beta01 dirilis. Versi 1.5.0-beta01 berisi commit ini.
Update dependensi
- Activity sekarang bergantung pada Lifecycle
2.4.0-beta01.
Versi 1.5.0-alpha05
6 April 2022
androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05, dan androidx.activity:activity-ktx:1.5.0-alpha05 dirilis. Versi 1.5.0-alpha05 berisi commit ini.
Perbaikan Bug
onPanelClosed()ComponentActivitykini juga memanggilonPanelClosed()super, yang memperbaiki masalah saat metodeonContextMenuClosedtidak akan dipanggil. (Ib6f77)
Versi 1.5.0-alpha04
23 Maret 2022
androidx.activity:activity:1.5.0-alpha04, androidx.activity:activity-compose:1.5.0-alpha04, dan androidx.activity:activity-ktx:1.5.0-alpha04 dirilis. Versi 1.5.0-alpha04 berisi commit ini.
Perbaikan Bug
SavedStateViewFactorysekarang mendukung penggunaanCreationExtrasmeskipun diinisialisasi denganSavedStateRegistryOwner. Jika tambahan disediakan, argumen yang diinisialisasi akan diabaikan. (I6c43b, b/224844583)
Versi 1.5.0-alpha03
23 Februari 2022
androidx.activity:activity:1.5.0-alpha03, androidx.activity:activity-compose:1.5.0-alpha03, dan androidx.activity:activity-ktx:1.5.0-alpha03 dirilis. Versi 1.5.0-alpha03 berisi commit ini.
Perubahan API
- Anda sekarang dapat meneruskan
CreationExtraske fungsiby viewModels()aktivitas (I6a3e6, b/217600303)
Versi 1.5.0-alpha02
9 Februari 2022
androidx.activity:activity:1.5.0-alpha02, androidx.activity:activity-compose:1.5.0-alpha02, dan androidx.activity:activity-ktx:1.5.0-alpha02 dirilis. Versi 1.5.0-alpha02 berisi commit ini.
Fitur Baru
ComponentActivitykini mengimplementasikan antarmukaOnPictureInPictureModeChangedProvideruntuk memungkinkan komponen apa pun menerima peristiwa perubahan mode picture-in-picture. (I9f567)ComponentActivitykini mengimplementasikan antarmukaOnMultiWindowModeChangedProvideruntuk memungkinkan komponen apa pun menerima peristiwa perubahan mode multi-aplikasi. (I62d91)
Versi 1.5.0-alpha01
26 Januari 2022
androidx.activity:activity:1.5.0-alpha01, androidx.activity:activity-compose:1.5.0-alpha01, dan androidx.activity:activity-ktx:1.5.0-alpha01 dirilis. Versi 1.5.0-alpha01 berisi commit ini.
Fitur Baru
ComponentActivitykini terintegrasi dengan ViewModel CreationExtras, yang diperkenalkan sebagai bagian dari Lifecycle2.5.0-alpha01. (Ie7e00, b/207012584)- Menambahkan
ComponentDialog, subclassDialogyang menyertakanOnBackPressedDispatcheryang akan dipanggil saat tombol kembali sistem ditekan ketika dialog terlihat. Yang penting, subclass ini juga menyetelViewTreeOnBackPressedDispatcherOwner, yang memungkinkan tampilan dengan cara umum untuk mengambil dispatcher yang benar baik yang ada diComponentActivityatauComponentDialog. (I8a1bc) ComponentActivitykini mengimplementasikan antarmukaOnNewIntentProviderbaru untuk memungkinkan komponen apa pun menerima peristiwa ini. (If1f8b)ComponentActivitykini mengimplementasikan antarmukaOnConfigurationChangedProviderbaru untuk memungkinkan komponen apa pun menerima peristiwa ini. (If623b)ComponentActivitykini mengimplementasikan antarmukaOnTrimMemoryProviderbaru untuk memungkinkan komponen apa pun menerima peristiwa ini. (Ia9295)
Perubahan API
- Konstruktor tanpa parameter untuk
ActivityResultContracts.CreateDocumentsudah tidak digunakan lagi dan diganti dengan konstruktor baru yang menggunakan jenis MIME konkret (misalnya,"image/png") sebagaimana diwajibkan olehIntent.ACTION_CREATE_DOCUMENT. (I2bec6) OnBackPressedDispatcherOwneryang terkait dengan View sekarang dapat diambil melaluiViewTreeOnBackPressedDispatcherOwner, bukan mengandalkan transmisiContext. (I74685)
Perbaikan Bug
- Memperbaiki error saat mengakses
ViewModeluntuk pertama kalinya dari callbackregisterForActivityResult()atau callback keLifecycleObserverditambahkan sebagai bagian dariinitComponentActivity. (Ife83f)
Versi 1.4.0
Versi 1.4.0
27 Oktober 2021
androidx.activity:activity:1.4.0, androidx.activity:activity-compose:1.4.0, dan androidx.activity:activity-ktx:1.4.0 dirilis. Versi 1.4.0 berisi commit ini.
Perubahan penting sejak versi 1.3.0
ComponentActivityAndroidX kini mengimplementasikan antarmukaMenuHost. Tindakan ini memungkinkan komponen apa pun menambahkan item menu keActionBardengan menambahkan instanceMenuProviderke aktivitas. SetiapMenuProviderdapat ditambahkan secara opsional denganLifecycleyang akan otomatis mengontrol visibilitas item menu tersebut berdasarkan statusLifecycledan menangani penghapusanMenuProvidersaatLifecycledihancurkan.- Class
ActivityResultContracttelah ditulis ulang di Kotlin untuk memastikan bahwa developer yang menulis kontrak kustom di Kotlin dapat menentukan nullability yang benar untuk class input dan output. - Class
ActivityResultContractsdan kontraknya telah ditulis ulang di Kotlin guna memastikan nullability yang tepat.
Versi 1.4.0-rc01
13 Oktober 2021
androidx.activity:activity:1.4.0-rc01, androidx.activity:activity-compose:1.4.0-rc01, dan androidx.activity:activity-ktx:1.4.0-rc01 dirilis. Versi 1.4.0-rc01 berisi commit ini.
Perbaikan Bug
ActivityResultRegistrytidak akan lagi menampilkan hasil keActivityResultCallbacksaat panggilanlaunchmenampilkanExceptionapa pun. (If4f91, b/200845664)
Versi 1.4.0-beta01
29 September 2021
androidx.activity:activity:1.4.0-beta01, androidx.activity:activity-compose:1.4.0-beta01, dan androidx.activity:activity-ktx:1.4.0-beta01 dirilis. Versi 1.4.0-beta01 berisi commit ini.
Perubahan API
- Memperbaiki jenis untuk
ActivityResultContracts.OpenMultipleDocumentsdanActivityResultContracts.GetMultipleContentsyang kemudian menyebabkan penggunaan jenis outputList<? extends Uri>saat menggunakan kode dari bahasa pemrograman Java. (If71de) - Konstanta publik dalam class
ActivityResultContracts.StartActivityForResult,ActivityResultContracts.StartIntentSenderForResult, danActivityResultContracts.RequestMultiplePermissionskini dapat diakses saat menggunakan Kotlin melalui objekCompanion-nya yang sekarang publik. (aosp/1832555)
Pembaruan Dokumentasi
- Pesan penghentian penggunaan untuk API yang sekarang ditangani oleh Activity Result API, yaitu
startActivityForResult,startIntentSenderForResult,onActivityResult,requestPermissions, danonRequestPermissionsResult, semuanya telah diperluas dengan detail selengkapnya. (cce80f)
Versi 1.4.0-alpha02
15 September 2021
androidx.activity:activity:1.4.0-alpha02, androidx.activity:activity-compose:1.4.0-alpha02, dan androidx.activity:activity-ktx:1.4.0-alpha02 dirilis. Versi 1.4.0-alpha02 berisi commit ini.
Fitur Baru
- Artefak
activity-composesekarang berisi error lintLaunchDuringCompositionyang mencegah Anda memanggil metodelaunchdariActivityResultLaunchersebagai bagian dari komposisi karena komposisi seharusnya bebas efek samping. Menggunakan API untuk menangani efek samping. (7c2bbe, b/191347220)
Perubahan API
- Class
ActivityResultContracttelah ditulis ulang di Kotlin untuk memastikan bahwa developer yang menulis kontrak kustom di Kotlin dapat menentukan nullability yang benar untuk class input dan output. (I8a8f5) - Class
ActivityResultContractsdan kontraknya telah ditulis ulang di Kotlin guna memastikan nullability yang tepat. (I69802)
Versi 1.4.0-alpha01
1 September 2021
androidx.activity:activity:1.4.0-alpha01, androidx.activity:activity-compose:1.4.0-alpha01, dan androidx.activity:activity-ktx:1.4.0-alpha01 dirilis. Versi 1.4.0-alpha01 berisi commit ini.
Fitur Baru
ComponentActivityAndroidX kini mengimplementasikan antarmukaMenuHost. Tindakan ini memungkinkan komponen apa pun menambahkan item menu keActionBardengan menambahkan instanceMenuProviderke aktivitas. SetiapMenuProviderdapat ditambahkan secara opsional denganLifecycleyang akan otomatis mengontrol visibilitas item menu tersebut berdasarkan statusLifecycledan menangani penghapusanMenuProvidersaatLifecycledihancurkan. (I3b608):
/**
* Using the addMenuProvider() API directly in your Activity
**/
class ExampleActivity : ComponentActivity(R.layout.activity_example) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Add menu items without overriding methods in the Activity
addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
})
}
}
/**
* Using the addMenuProvider() API in a Fragment
**/
class ExampleFragment : Fragment(R.layout.fragment_example) {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
// The usage of an interface lets you inject your own implementation
val menuHost: MenuHost = requireActivity()
// Add menu items without using the Fragment Menu APIs
// Note how we can tie the MenuProvider to the viewLifecycleOwner
// and an optional Lifecycle.State (here, RESUMED) to indicate when
// the menu should be visible
menuHost.addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
}, viewLifecycleOwner, Lifecycle.State.RESUMED)
}
Perubahan Perilaku
ActivityResultRegistrysekarang akan melemparkanIllegalStateExceptionsaat mencoba memanggillaunch()diActivityResultLauncheryang belum terdaftar atau yang telah dibatalkan pendaftarannya. (Ida75d, b/192567522)
Kontribusi Eksternal
- Terima kasih dmitrilc karena telah memperbaiki kesalahan ketik dalam dokumentasi
ActivityResult. (#221)
Versi 1.3.1
Versi 1.3.1
4 Agustus 2021
androidx.activity:activity:1.3.1, androidx.activity:activity-compose:1.3.1, dan androidx.activity:activity-ktx:1.3.1 dirilis. Versi 1.3.1 berisi commit ini.
Update dependensi
- Activity sekarang bergantung pada Kotlin
1.5.21. - Activity Compose sekarang bergantung pada Compose
1.0.1.
Versi 1.3.0
Versi 1.3.0
28 Juli 2021
androidx.activity:activity:1.3.0, androidx.activity:activity-compose:1.3.0, dan androidx.activity:activity-ktx:1.3.0 dirilis. Versi 1.3.0 berisi commit ini.
Perubahan penting sejak versi 1.2.0
- Artefak Activity Compose - Artefak
activity-composemenyediakan metode ekstensisetContentuntuk menghosting UI Jetpack Compose dalam aktivitas dan wrapper khusus Compose untuk berinteraksi denganComponentActivityAPI guna menangani tombol kembali sistem dan Activity Result API. Lihat dokumentasi untuk detail selengkapnya. - Kontrak CaptureVideo -
ActivityResultContractCaptureVideomenggantikan kontrakTakeVideoyang sekarang tidak digunakan lagi dan menampilkan boolean yang menunjukkan keberhasilan yang berfungsi di banyak aplikasi kamera. - Pelacakan Tampilan Petunjuk Picture-In-Picture - Pengguna
activity-ktxkini dapat menggunakan metode ekstensitrackPipAnimationHintViewdiActivityuntuk otomatis membuat ulangPictureInPictureParamsdengan posisi baru tampilan karena mengubah posisi relatif terhadap jendela.
Versi 1.3.0-rc02
14 Juli 2021
androidx.activity:activity:1.3.0-rc02, androidx.activity:activity-compose:1.3.0-rc02, dan androidx.activity:activity-ktx:1.3.0-rc02 dirilis. Versi 1.3.0-rc02 berisi commit ini.
Perbaikan Bug
- Callback
ActivityResultRegistrykini disimpan dan dipulihkan dengan benar, sehingga callback tidak diduplikasi di savedState. (I97816, b/191893160)
Versi 1.3.0-rc01
1 Juli 2021
androidx.activity:activity:1.3.0-rc01, androidx.activity:activity-compose:1.3.0-rc01, dan androidx.activity:activity-ktx:1.3.0-rc01 dirilis tanpa perubahan dari versi 1.3.0-beta02. Versi 1.3.0-rc01 berisi commit ini.
Versi 1.3.0-beta02
16 Juni 2021
androidx.activity:activity:1.3.0-beta02, androidx.activity:activity-compose:1.3.0-beta02, dan androidx.activity:activity-ktx:1.3.0-beta02 dirilis. Versi 1.3.0-beta02 berisi commit ini.
Mengupdate activity-compose agar bergantung pada Compose 1.0.0-beta09. androidx.compose.ui:ui-test-junit4 sekarang memiliki dependensi waktu kompilasi pada activity-compose.
Versi 1.3.0-beta01
2 Juni 2021
androidx.activity:activity:1.3.0-beta01, androidx.activity:activity-compose:1.3.0-beta01, dan androidx.activity:activity-ktx:1.3.0-beta01 dirilis. Versi 1.3.0-beta01 berisi commit ini.
Perubahan API
- Metode
@Composable registerForActivityResult()yang sebelumnya tidak digunakan lagi telah dihapus. Harap gunakanrememberLauncherForActivityResult(). (Ic39d3)
Versi 1.3.0-alpha08
18 Mei 2021
androidx.activity:activity:1.3.0-alpha08, androidx.activity:activity-compose:1.3.0-alpha08, dan androidx.activity:activity-ktx:1.3.0-alpha08 dirilis. Versi 1.3.0-alpha08 berisi commit ini.
Fitur Baru
ActivityResultContractCaptureVideobaru menampilkan boolean keActivityResultCallbackyang menunjukkan apakah video Anda berhasil disimpan ke URI yang diberikan. Ini menggantikan kontrakTakeVideoyang sekarang tidak digunakan lagi karena aplikasi kamera sangat jarang mendukung ditampilkannya bitmap thumbnail, sehingga hasilnya menjadi tidak bermanfaat. (Ie21f2, b/185938070)- Menambahkan
Activity#setPipAnimationHintViewAPI baru untuk memperbarui petunjuk rect sumber PipParams setiap kali tampilan berpindah. (I9063d)
Perubahan API
- Fungsi
rememberLauncherForActivityResultkini menampilkan peluncur yang tidak lagi menggunakan fungsiunregister(). Pendaftaran dan pembatalan pendaftaran peluncur otomatis ditangani olehrememberLauncherForActivityResult. (I2443e)
Kompatibilitas Compose
androidx.activity:activity-compose:1.3.0-alpha08hanya kompatibel dengan Compose versi1.0.0-beta07dan yang lebih baru.
Versi 1.3.0-alpha07
21 April 2021
androidx.activity:activity:1.3.0-alpha07, androidx.activity:activity-compose:1.3.0-alpha07, dan androidx.activity:activity-ktx:1.3.0-alpha07 dirilis. Versi 1.3.0-alpha07 berisi commit ini.
Perbaikan Bug
rememberLauncherForActivityResultkini menampilkan referensi stabil ke instanceActivityResultLauncheryang sama meskipun kontrak berubah karena rekomposisi. (Id2d6d)- Menggunakan versi Fragment yang tidak stabil di atas
1.3.0tidak akan lagi melemparkan error lint positif palsu (PP) yang meminta Anda untuk menggunakan1.3.0. (aosp/1670206, b/184847092)
Versi 1.3.0-alpha06
7 April 2021
androidx.activity:activity:1.3.0-alpha06, androidx.activity:activity-compose:1.3.0-alpha06, dan androidx.activity:activity-ktx:1.3.0-alpha06 dirilis. Versi 1.3.0-alpha06 berisi commit ini.
Perubahan API
registerForActivityResult()API telah diganti namanya menjadirememberLauncherForActivityResult()untuk menunjukkan secara lebih baik bahwaActivityResultLauncheryang ditampilkan adalah objek terkelola yang diingat atas nama Anda. Jika mencoba memanggilunregister, kiniActivityResultLauncheryang ditampilkan akan melemparkan error. (I2bb6d)LocalOnBackPressedDispatcherOwner.currentdanLocalActivityResultRegistryOwner.currentkini menampilkan nilai nullable untuk menentukan secara lebih baik apakah nilai tersebut tersedia dalam komposisi saat ini. API yang memerlukan API tersebut, sepertiBackHandlerdanrememberLauncherForActivityResult(), kini masing-masing akan melemparkan error yang lebih deskriptif jika pemilik dasar tidak ditemukan.NavHostkini berfungsi meskipunOnBackPressedDispatcherOwnertidak ditemukan, sama kasusnya saat melihat pratinjauNavHost. (I7d8b4)
Perbaikan Bug
BackHandlerkini akan menangkap penekanan kembali dengan semestinya saat ActivitySTOPPED, laluSTARTEDlagi, dan callback lainnya ditambahkan dengan LifecycleOwner. (I71de6, b/182284739)- Menggunakan ekstensi metode
launch()denganActivityResultContractkustom yang memiliki inputUnittidak akan lagi menyebabkanNullPointerException(I76282, b/183837954)
Versi 1.3.0-alpha05
24 Maret 2021
androidx.activity:activity:1.3.0-alpha05, androidx.activity:activity-compose:1.3.0-alpha05, dan androidx.activity:activity-ktx:1.3.0-alpha05 dirilis. Versi 1.3.0-alpha05 berisi commit ini.
Perbaikan Bug
- Dari Activity 1.2.2: Memperbaiki masalah dalam pemeriksaan lint
InvalidFragmentVersionForActivityResultyang menyebabkan positif palsu (PP) saat menggunakan Fragment 1.3.1 atau yang lebih tinggi. (I54da1, b/182388985) - Dari Activity 1.2.2:
ComponentActivitysekarang menghindariClassNotFoundExceptionsaat meluncurkanIntentdariActivityResultContractyang sebelumnya disimpan sebagai tambahan diIntentlain. (Ieff05, b/182906230)
Update Dependensi
- Dari Activity 1.2.2: Activity sekarang bergantung pada Lifecycle
2.3.1.
Versi 1.3.0-alpha04
10 Maret 2021
androidx.activity:activity:1.3.0-alpha04, androidx.activity:activity-compose:1.3.0-alpha04, dan androidx.activity:activity-ktx:1.3.0-alpha04 dirilis. Versi 1.3.0-alpha04 berisi commit ini.
Perbaikan Bug
- Dari Activity
1.2.1:RequestMultiplePermissionssekarang selalu menampilkan hasil untuk semua izin yang diminta, bukan hanya izin yang sebelumnya tidak diberikan. (I50bc3, b/180884668) - Dari Activity
1.2.1:ActivityResultRegistrysekarang memastikan bahwa permintaanlaunch()yang sedang berlangsung akan menampilkan hasilnya meskipun Anda melakukanunregister(), laluregister()lagi dengan kunci yang sama. (I9ef34, b/181267562) - Activity Compose tidak lagi menambahkan dependensi pengujian ke classpath runtime. (Ifd8b3)
- Memperbaiki masalah pada
BackHandlerketika lambdaonBackyang ditetapkan sebelumnya masih digunakan setelah rekomposisi. (8eb5eb)
Versi 1.3.0-alpha03
24 Februari 2021
androidx.activity:activity:1.3.0-alpha03, androidx.activity:activity-compose:1.3.0-alpha03, dan androidx.activity:activity-ktx:1.3.0-alpha03 dirilis. Versi 1.3.0-alpha03 berisi commit ini.
Fitur Baru
- Kini terdapat fungsi
registerForActivityResultComposable untuk mendapatkan hasil dari aktivitas dalam composable. (Ia7851, b/172690553)
Perubahan API
LocalOnBackPressedDispatcherOwnersekarang memiliki fungsiprovidesyang dapat digunakan denganCompositionLocalProvider, menggantikanasProvidableCompositionLocal()API. (I45d24)
Versi 1.3.0-alpha02
10 Februari 2021
androidx.activity:activity:1.3.0-alpha02, androidx.activity:activity-compose:1.3.0-alpha02, dan androidx.activity:activity-ktx:1.3.0-alpha02 dirilis. Versi 1.3.0-alpha02 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah di Activity Compose
1.3.0-alpha01yang menyebabkan pengecualianNoSuchMethodError: No static method setContentsaat menggunakan Compose1.0.0-alpha12. Semua pengguna Compose harus bergantung pada1.3.0-alpha02dan yang lebih tinggi. (b/179911234)
Perubahan API
BackHandlerAPI dapat digunakan untuk mengizinkan Composable guna menangkap tombol kembali sistem. (I58ed5, b/172154006)
Versi 1.3.0-alpha01
10 Februari 2021
androidx.activity:activity:1.3.0-alpha01, androidx.activity:activity-compose:1.3.0-alpha01, dan androidx.activity:activity-ktx:1.3.0-alpha01 dirilis. Versi 1.3.0-alpha01 berisi commit ini.
Fitur Baru
- Artefak
activity-composebaru menyediakan helper khusus Jetpack Compose untuk API khususandroidx.activity.ComponentActivity.setContenttelah dipindahkan dariandroidx.compose.ui.platform.setContentkeandroidx.activity.compose.setContent. (Icf416)
Masalah Umum
- Menggunakan Activity Compose
1.3.0-alpha01dan library yang bergantung padanya, sepertiandroidx.compose.ui:ui-test-junit4:1.0.0-alpha12, akan menghasilkan pengecualianNoSuchMethodError: No static method setContent. (b/179911234)
Versi 1.2.4
Versi 1.2.4
21 Juli 2021
androidx.activity:activity:1.2.4 dan androidx.activity:activity-ktx:1.2.4 dirilis. Versi 1.2.4 berisi commit ini.
Perbaikan Bug
- Dari Activity
1.3.0-rc02: Callback ActivityResultRegistry kini disimpan dan dipulihkan dengan benar, sehingga callback tidak diduplikasi di savedState. (I97816, b/191893160)
Versi 1.2.3
Versi 1.2.3
5 Mei 2021
androidx.activity:activity:1.2.3 dan androidx.activity:activity-ktx:1.2.3 dirilis. Versi 1.2.3 berisi commit ini.
Perbaikan Bug
- Menggunakan ekstensi metode
launch()denganActivityResultContractkustom yang memiliki inputUnittidak akan lagi menyebabkanNullPointerException(I76282, b/183837954) - Memperbaiki error lint positif palsu yang memberi tahu Anda untuk menggunakan Fragment
1.3.0saat menggunakan build snapshot, alfa, beta, atau RC versi Fragment yang lebih baru. (f4a57e, b/184847092)
Versi 1.2.2
Versi 1.2.2
24 Maret 2021
androidx.activity:activity:1.2.2 dan androidx.activity:activity-ktx:1.2.2 dirilis. Versi 1.2.2 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah dalam pemeriksaan lint
InvalidFragmentVersionForActivityResultyang menyebabkan positif palsu (PP) saat menggunakan Fragment 1.3.1 atau yang lebih tinggi. (I54da1, b/182388985) ComponentActivitysekarang menghindariClassNotFoundExceptionsaat meluncurkanIntentdariActivityResultContractyang sebelumnya disimpan sebagai tambahan diIntentlain. (Ieff05, b/182906230)
Update Dependensi
- Activity sekarang bergantung pada Lifecycle
2.3.1.
Versi 1.2.1
Versi 1.2.1
10 Maret 2021
androidx.activity:activity:1.2.1 dan androidx.activity:activity-ktx:1.2.1 dirilis. Versi 1.2.1 berisi commit ini.
Perbaikan Bug
RequestMultiplePermissionssekarang selalu menampilkan hasil untuk semua izin yang diminta, bukan hanya izin yang sebelumnya tidak diberikan. (I50bc3, b/180884668)ActivityResultRegistrysekarang memastikan bahwa permintaanlaunch()yang sedang berlangsung akan menampilkan hasilnya meskipun Anda melakukanunregister(), laluregister()lagi dengan kunci yang sama. (I9ef34, b/181267562)
Versi 1.2.0
Versi 1.2.0
10 Februari 2021
androidx.activity:activity:1.2.0 dan androidx.activity:activity-ktx:1.2.0 dirilis. Versi 1.2.0 berisi commit ini.
Perubahan utama sejak versi 1.1.0
- Activity Result API:
ComponentActivitykini menyediakanActivityResultRegistryyang memungkinkan Anda menanganistartActivityForResult()+onActivityResult()serta alurrequestPermissions()+onRequestPermissionsResult()tanpa mengganti metode di Activity atau Fragment, memberikan peningkatan keamanan jenis melaluiActivityResultContract, dan menyediakan hook untuk menguji alur ini. Lihat Mendapatkan Hasil dari Activity terbaru.
ContextAware:ComponentActivitykini mengimplementasikanContextAwaresehingga Anda dapat menambahkan satu atau beberapa instanceOnContextAvailableListeneryang akan menerima callback sebelumActivity.onCreate()dasar.- Dengan ekstensi Kotlin
withContextAvailable()yang ditangguhkan, Anda dapat menjalankan blok non-penangguhan saat Context tersedia dan menampilkan hasil. - API ini digunakan oleh
FragmentActivitydi Fragment 1.3.0 untuk memulihkan statusFragmentManager. Setiap pemroses yang ditambahkan ke subclassFragmentActivityakan berjalan setelah pemroses tersebut. - API ini digunakan oleh
AppCompatActivitydi AppCompat 1.3.0-alpha02 atau yang lebih tinggi. Setiap pemroses yang ditambahkan ke subclassAppCompatActivityakan berjalan setelah pemroses tersebut.
- Dengan ekstensi Kotlin
Dukungan
ViewTree:ComponentActivitysekarang mendukungViewTreeLifecycleOwner.get(View),ViewTreeViewModelStoreOwner.get(View), danViewTreeSavedStateRegistryOwnerAPI yang ditambahkan di Lifecycle2.3.0dan SavedState1.1.0sehingga API tersebut menampilkan Activity sebagaiLifecycleOwner,ViewModelStoreOwner, danSavedStateRegistryOwneruntuk setiap View yang ditambahkan langsung keComponentActivity.
- reportFullyDrawn() backport - Metode
ActivitydarireportFullyDrawn()telah di-backport dalamComponentActivityagar berfungsi di semua API level, memperbaiki error pada API 19, dan menambahkan rekaman aktivitas untuk metode ini untuk semua API level.
Versi 1.2.0-rc01
16 Desember 2020
androidx.activity:activity:1.2.0-rc01 dan androidx.activity:activity-ktx:1.2.0-rc01 dirilis. Versi 1.2.0-rc01 berisi commit ini.
Perbaikan Bug
- Kini,
ActivityResultRegistryselalu memulihkan status sama persis yang disimpan. (Idd56b) - Menambahkan pelacakan ke
ComponentActivity.reportFullyDrawn(Ic7632)
Kontribusi Eksternal
ComponentActivitysekarang menggantireportFullyDrawn(), yang memungkinkannya dipanggil di semua API level dan memperbaiki error saat memanggil metode ini tanpa izin sistem yang sesuai di perangkat API 19. Terima kasih, Simon Schiller! (b/163239764, #103)
Versi 1.2.0-beta02
2 Desember 2020
androidx.activity:activity:1.2.0-beta02 dan androidx.activity:activity-ktx:1.2.0-beta02 dirilis. Versi 1.2.0-beta02 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah saat Activity Result API tidak akan menunggu Lifecycle menjadi
STARTEDsebelum memberikan hasil saat terdaftar denganLifecycle. (I109ea)
Kontribusi Eksternal
- Memperbarui dokumentasi untuk
launch()agar secara eksplisit menyatakan bahwa perintah ini dapat melemparkanActivityNotFoundException. Terima kasih Michał Zieliński! (aosp/1493580)
Versi 1.2.0-beta01
1 Oktober 2020
androidx.activity:activity:1.2.0-beta01 dan androidx.activity:activity-ktx:1.2.0-beta01 dirilis. Versi 1.2.0-beta01 berisi commit ini.
Perbaikan Bug
ActivityResultRegistrysekarang menghasilkan bilangan bulat secara acak sampai menemukan bilangan yang tidak dialokasikan untuk digunakan sebagairegister()kode permintaan, sehingga mencegah kemungkinan bilangan bulat berlebih yang disebabkan oleh peningkatan kode permintaan. (b/168779518)Observer
Lifecycledihapus dengan benar saat memanggilunregister()diActivityResultLauncher. (b/165608393)
Perubahan Perilaku
ActivityResultRegistrysekarang menampilkanIllegalStateExceptionsaat mencoba memanggilregister()denganLifecycleOwneryangLifecycle-nya telah mencapaiSTARTED. (b/165435866)
Pembaruan Dokumentasi
- Dokumentasi
ContextAwareditautkan keLifecycleOwneruntuk menandai callbackLifecyclesebagai tempat yang tepat bagi peristiwa pembuatan dan penghancuran. (aosp/1414152)
Versi 1.2.0-alpha08
19 Agustus 2020
androidx.activity:activity:1.2.0-alpha08 dan androidx.activity:activity-ktx:1.2.0-alpha08 dirilis. Versi 1.2.0-alpha08 berisi commit ini.
Fitur Baru
ComponentActivitykini mengimplementasikanContextAwaresehingga Anda dapat menambahkan satu atau beberapa instanceOnContextAvailableListeneryang akan menerima callback sebelumActivity.onCreate()dasar. (b/161390636)- Dengan ekstensi Kotlin
withContextAvailable()yang ditangguhkan, Anda dapat menjalankan blok non-penangguhan saat Context tersedia dan menampilkan hasil. (I8290c) - API ini digunakan oleh
FragmentActivitydi Fragment 1.3.0-alpha08 untuk memulihkan statusFragmentManager. Setiap pemroses yang ditambahkan ke subclassFragmentActivityakan berjalan setelah pemroses tersebut. (I513da) - API ini digunakan oleh
AppCompatActivitydi AppCompat 1.3.0-alpha02. Setiap pemroses yang ditambahkan ke subclassAppCompatActivityakan berjalan setelah pemroses tersebut. (I513da)
- Dengan ekstensi Kotlin
Perbaikan Bug
- Memperbaiki masalah pemeriksaan Lint
ActivityResultFragmentVersionDetectoryang menyebabkannya terganggu saat menggunakan Lint 27.1.0 atau versi yang lebih baru. (b/162155191)
Versi 1.2.0-alpha07
22 Juli 2020
androidx.activity:activity:1.2.0-alpha07 dan androidx.activity:activity-ktx:1.2.0-alpha07 dirilis. Versi 1.2.0-alpha07 berisi commit ini.
Fitur Baru
- Menambahkan pemeriksaan lint
InvalidFragmentVersionForActivityResultbaru yang memverifikasi bahwa Anda menggunakan Fragment1.3.0-alpha07saat menggunakan Activity Result API, menghindari error runtime karena masalah "kode permintaan tidak valid” dan permintaan izin yang tidak berfungsi akibat penggunaan versi Fragment yang lebih lama. (b/152554847)
Kontribusi Eksternal
- Memperbaiki
ArrayIndexOutOfBoundsExceptionsaat menguraikan hasil untuk kontrak Activity ResultRequestPermission. (I8f9e3, b/161057605)
Versi 1.2.0-alpha06
10 Juni 2020
androidx.activity:activity:1.2.0-alpha06 dan androidx.activity:activity-ktx:1.2.0-alpha06 dirilis. Versi 1.2.0-alpha06 berisi commit ini.
Fitur Baru
- Anda kini dapat mengurai class
ActivityResultdalam Kotlin untuk mengaksesrequestCodedanintentsecara langsung. (b/157212935) ActivityResultLauncherkini memungkinkan Anda mendapatkanActivityResultContractyang digunakan untuk mendaftarkan peluncur. (b/156875743)
Perubahan API
- Perubahan yang dapat menyebabkan gangguan: Metode
invoke()padaActivityResultRegistrytelah diganti namanya menjadionLaunch(). (b/157496491) - Kontrak
OpenMultipleDocumentskini menampilkan daftar kosong, bukannullke callback terdaftar jika tidak ada hasil yang ditampilkan. (b/157348014)
Versi 1.2.0-alpha05
20 Mei 2020
androidx.activity:activity:1.2.0-alpha05 dan androidx.activity:activity-ktx:1.2.0-alpha05 dirilis. Versi 1.2.0-alpha05 berisi commit ini.
Fitur Baru
- Menambahkan dukungan untuk
ViewTreeViewModelStoreOwnerdari Lifecycle2.3.0-alpha03, danViewTreeSavedStateRegistryOwnerdari SavedState1.1.0-alpha01saat menggunakanViewdalamComponentActivity. (aosp/1297993, aosp/1300264)
Perubahan API
- Kontrak
TakePicturekini menampilkanbooleanyang menunjukkan keberhasilan, bukan thumbnailBitmapkarena sangat jarang didukung oleh aplikasi kamera saat menulis gambar keUriyang disediakan. (b/154302879) - Ekstensi
invoke()diActivityResultLaunchertelah dihapus dan diganti denganlaunch()secara eksplisit untuk menunjukkan dengan lebih baik bahwa ini adalah operasi asinkron. Ekstensi Kotlin untuklaunchtelah ditambahkan ke paketandroidx.activity.resultuntukActivityResultLauncher<Void>danActivityResultLauncher<Unit>yang masing-masing menghilangkan kebutuhan untuk meneruskannullatauUnit, yang mencerminkan perilaku dari ekstensiinvoke()sebelumnya. (aosp/1304674, aosp/1304675) - Metode
IntentSenderRequest.BuilderuntuksetFlagsMask()dansetFlagsValues()telah digabung menjadi satu metodesetFlags(). (aosp/1302111)
Perbaikan Bug
- Saat mendaftarkan
ActivityResultCallbackdenganLifecycleOwner, masalah ketika callback akan dipicu sebelum status mencapaiSTARTEDtelah diperbaiki. (aosp/1309744)
Perubahan Perilaku
ActivityResultRegistrysekarang menghasilkan kode permintaan yang dimulai dari0xFFFF, bukan dari0, yang mencegah tumpang-tindih saat menggunakanstartActivityForResult()ataurequestPermissions()dalam suatu aktivitas. (aosp/1302324)
Versi 1.2.0-alpha04
29 April 2020
androidx.activity:activity:1.2.0-alpha04 dan androidx.activity:activity-ktx:1.2.0-alpha04 dirilis. Versi 1.2.0-alpha04 berisi commit ini.
Fitur Baru
- Menambahkan kontrak yang dapat memanggil startIntentSenderForResult pada ActivityResult API. (b/153007517)
Perubahan API
- Metode
prepareCall()telah diganti namanya menjadiregisterForActivityResult(), padaComponentActivitydi sini dan di Fragment1.3.0-alpha04. (aosp/1278717) - Kontrak
GetContents,OpenDocuments, danRequestPermissionssecara berurutan telah diganti namanya menjadiGetMultipleContents,OpenMultipleDocuments, danRequestMultiplePermissions. (aosp/1280161) ComponentActivitysekarang mengimplementasikan antarmukaActivityResultRegisteryOwner. (aosp/1290888)- -
startActivityForResult()/onActivityResult()danonRequestPermissionsResult()API diComponentActivitytidak digunakan lagi. Harap gunakan Activity Result API. (b/154751887)
Perbaikan Bug
- Saat menggunakan kontrak
GetMultipleContentsdanOpenMultipleDocumentslalu memilih satu item, item tersebut kini ditampilkan dengan benar ke callback Anda. (b/152941153)
Versi 1.2.0-alpha03
1 April 2020
androidx.activity:activity:1.2.0-alpha03 dan androidx.activity:activity-ktx:1.2.0-alpha03 dirilis. Versi 1.2.0-alpha03 berisi commit ini.
Fitur Baru
- Menambahkan kontrak
TakeVideo,PickContact,GetContent,GetContents,OpenDocument,OpenDocuments,OpenDocumentTree, danCreateDocumentpada sekumpulan kontrak yang dibuat sebelumnya yang disediakan olehActivityResultContracts. (aosp/1262482, aosp/1266916, aosp/1268960) - Activity Result API kini mendukung peluncuran aktivitas untuk hasil dengan
ActivityOptionsCompatopsional. (b/151860054)
Perubahan API
- Kontrak
TakePicturekini memerlukan inputUriuntuk destinasi penyimpanan gambar. Kontrak sebelumnya yang tidak memerlukan input apa pun telah diganti namanya menjadiTakePicturePreview. (aosp/1262482) - Metode
registerActivityResultCallback()padaActivityResultRegistrytelah diganti namanya menjadiregister(). (aosp/1267621) - Metode
dispose()padaActivityResultLaunchertelah diganti namanya menjadiunregister()danunregisterResultCallback()padaActivityResultRegistrytelah dihapus. (aosp/1267621) - Metode
createIntent()ActivityResultContactkini memerlukanContextsebagai tambahan dari input untuk memungkinkan pembuatan Intent eksplisit. (aosp/1238800) ActivityResultContractkini dapat menggantigetSynchronousResult()untuk memberikan hasil tanpa memanggilstartActivityForResult. Kode ini digunakan oleh kontrakRequestPermissiondanRequestPermissionsuntuk memberikan status 'granted' dengan benar jika izin yang diminta telah diberikan. (b/151110799)- Kontrak
Dialyang sebelumnya tersedia telah dihapus karenaIntenttidak dimaksudkan untuk digunakan denganstartActivityForResult(). (aosp/1266916) - Banyak Activity Result API yang tidak dimaksudkan untuk diperpanjang kini menjadi
final. Ini termasukgetActivityResultRegistry(), metodeprepareCall(), semua metodeActivityResultRegistrykecualiinvoke(), dan sejumlah kontrak default yang tidak mendukung tambahan opsional. (b/152439361)
Perbaikan Bug
- Memperbaiki
NullPointerExceptionpadaActivityResultRegistrysaat mencoba menyampaikan hasil ke callback yang belum didaftarkan ulang setelah perubahan konfigurasi;ActivityResultRegistrykini menyimpan hasil yang tertunda ini, lalu menyampaikannya saat callback didaftarkan ulang. (b/152137004)
Versi 1.2.0-alpha02
18 Maret 2020
androidx.activity:activity:1.2.0-alpha02 dan androidx.activity:activity-ktx:1.2.0-alpha02 dirilis. Versi 1.2.0-alpha02 berisi commit ini.
Fitur Baru
- ActivityResultRegistry:
ComponentActivitykini menyediakanActivityResultRegistryyang memungkinkan Anda menangani alurstartActivityForResult()+onActivityResult()sertarequestPermissions()+onRequestPermissionsResult()tanpa mengganti metode dalam Activity atau Fragment, meningkatkan keamanan jenis melaluiActivityResultContract, serta menyediakan hook untuk menguji alur ini. Lihat Mendapatkan Hasil dari Activity terbaru. (b/125158199)
Versi 1.2.0-alpha01
4 Maret 2020
androidx.activity:activity:1.2.0-alpha01 dan androidx.activity:activity-ktx:1.2.0-alpha01 dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Fitur Baru
- Menambah dukungan untuk
ViewTreeLifecycleOwner.get(View)API yang ditambahkan di Lifecycle2.3.0-alpha01sehingga API ini menampilkan Activity sebagaiLifecycleOwneruntuk semua View yang ditambahkan langsung ke Activity. (aosp/1182955)
Perbaikan Bug
- Memperbaiki regresi yang diperkenalkan di Activity
1.1.0saat menjalankan versi platform yang lama denganonBackPressed()yang akan menyebabkanIllegalStateExceptionkarena adanya bug diandroid.app.FragmentManager. (b/146290338)
Versi 1.1.0
Versi 1.1.0
22 Januari 2020
androidx.activity:activity:1.1.0 dirilis. Versi 1.1.0 berisi commit ini.
Perubahan penting sejak versi 1.0.0
- Integrasi Lifecycle ViewModel SavedState:
SavedStateViewModelFactorysekarang menjadi setelan pabrik default yang digunakan saat menggunakanby viewModels(), konstruktorViewModelProvider, atauViewModelProviders.of()denganComponentActivityatau subclass-nya.
Versi 1.1.0-rc03
4 Desember 2019
androidx.activity:activity:1.1.0-rc03 dan androidx.activity:activity-ktx:1.1.0-rc03 dirilis. Versi 1.1.0-rc03 berisi commit ini.
Perubahan dependensi
- Activity sekarang bergantung pada Lifecycle
2.2.0-rc03dan Lifecycle ViewModel SavedState1.0.0-rc03.
Versi 1.1.0-rc02
7 November 2019
androidx.activity:activity:1.1.0-rc02 dan androidx.activity:activity-ktx:1.1.0-rc02 dirilis. Versi 1.1.0-rc02 berisi commit ini.
Perubahan dependensi
- Activity sekarang bergantung pada Lifecycle
2.2.0-rc02.
Versi 1.1.0-rc01
23 Oktober 2019
androidx.activity:activity:1.1.0-rc01 dan androidx.activity:activity-ktx:1.1.0-rc01 dirilis tanpa perubahan dari versi 1.1.0-beta01. Versi 1.1.0-rc01 berisi commit ini.
Versi 1.1.0-beta01
9 Oktober 2019
androidx.activity:activity:1.1.0-beta01 dan androidx.activity:activity-ktx:1.1.0-beta01 dirilis. Versi 1.1.0-beta01 berisi commit ini.
Perubahan dependensi
- Activity sekarang bergantung pada SavedState 1.0.0 stabil.
Versi 1.1.0-alpha03
5 September 2019
androidx.activity:activity:1.1.0-alpha03 dan androidx.activity:activity-ktx:1.1.0-alpha03 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Fitur baru
- Activity sekarang bergantung pada Core 1.1.0 stabil.
Perbaikan bug
- Activity sekarang bergantung pada Lifecycle
2.2.0-alpha04.
Versi 1.1.0-alpha02
7 Agustus 2019
androidx.activity:activity:1.1.0-alpha02 dan androidx.activity:activity-ktx:1.1.0-alpha02 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Fitur baru
SavedStateViewModelFactorysekarang menjadi setelan pabrik default yang digunakan saat menggunakanby viewModels(), konstruktorViewModelProvider, atauViewModelProviders.of()denganComponentActivity(b/135716331)
Versi 1.1.0-alpha01
2 Juli 2019
androidx.activity:activity:1.1.0-alpha01 dan androidx.activity:activity-ktx:1.1.0-alpha01 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Fitur baru
activitysekarang bergantung pada Lifecycle2.2.0-alpha02. (aosp/1007817)activity-ktxmenambahkan dependensi padalifecycle-runtime-ktx; Anda tidak perlu lagi menambahkannya secara eksplisit ke dependensi Anda saat menggunakanactivity-ktxatau library yang bergantung padaactivity-ktx(sepertifragment-ktx). (aosp/987162)
Versi 1.0.0
Versi 1.0.0
5 September 2019
androidx.activity:activity:1.0.0 dan androidx.activity:activity-ktx:1.0.0 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Fitur Utama 1.0.0
- ComponentActivity:
ComponentActivityberfungsi sebagai class dasar baru untukFragmentActivitydalam Fragment1.1.0dan, dengan demikian,AppCompatActivitydalam AppCompat1.1.0. - activity-ktx: Modul
activity-ktxmencakup ekstensi properti Kotlinby viewModelsuntuk mengakses ViewModels. Modul ini otomatis disertakan saat Anda menyertakanfragment-ktxdari Fragment1.1.0. - OnBackPressedDispatcher: Sebagai alternatif composable dari penggantian
onBackPressed(), sekarang Anda dapat mendaftarkanOnBackPressedCallbackdariLifecycleOwnermana pun (misalnya fragmen) untuk menangkap peristiwa tombol kembali sistem. Lambda dengan penerima versiaddCallbacktelah ditambahkan keactivity-ktx. Lihat Menyediakan dokumentasi navigasi kembali kustom untuk detail selengkapnya. - Penghentian onRetainCustomNonConfigurationInstance :
onRetainCustomNonConfigurationInstance()dangetLastCustomNonConfigurationInstance()API yang terkait telah dihentikan penggunaannya. Sebaiknya gunakan ViewModels untuk menyimpan status non-konfigurasi, karena menawarkan solusi composable yang sesuai untuk semuaViewModelStoreOwneryang memperjelas kepemilikan objek yang dipertahankan, serta memberikan callbackonCleared()untuk membersihkan resource saat aktivitas tersebut akhirnya dihancurkan.
Versi 1.0.0-rc01
2 Juli 2019
androidx.activity:activity:1.0.0-rc01 dan androidx.activity:activity-ktx:1.0.0-rc01 dirilis tanpa perubahan dari versi 1.0.0-beta01. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Versi 1.0.0-beta01
5 Juni 2019
androidx.activity::activity:1.0.0-beta01 dan androidx.activity:activity-ktx:1.0.0-beta01 dirilis tanpa perubahan dari versi 1.0.0-alpha08. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Versi 1.0.0-alpha08
7 Mei 2019
androidx.activity:activity:1.0.0-alpha08 dan androidx.activity:activity-ktx:1.0.0-alpha08 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Perubahan API
- Perubahan yang dapat menyebabkan gangguan: Metode
addOnBackPressedCallbackdanremoveOnBackPressedCallbackyang sebelumnya tidak digunakan lagi dalamComponentActivitytelah dihapus. aosp/953857 - Metode
setEnabled()danisEnabled()dariOnBackPressedCallbacksekarang sudah final. b/131416833 - Metode
remove()dariOnBackPressedCallbacksekarang sudah final. aosp/952720 OnBackPressedDispatchersekarang memiliki konstruktor publik, sehingga Anda dapat membuat instance Anda sendiri untuk pengujian, dll. aosp/953431onBackPressed()untukComponentActivitysekarang secara eksplisit ditandai sebagai@MainThreadaosp/952721
Perbaikan bug
- Memperbaiki
ConcurrentModificationExceptionsaat memanggilremove()dari dalam metodehandleOnBackPressed()dariOnBackPressedCalbackyang ditambahkan denganLifecycleOwner. b/131765095
Versi 1.0.0-alpha07
25 April 2019
androidx.activity:activity:1.0.0-alpha07 dan androidx.activity:activity-ktx:1.0.0-alpha07 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Perubahan API
Rilis ini membuat perubahan signifikan pada penanganan onBackPressed(). Lihat dokumentasi navigasi kembali kustom yang diperbarui untuk detail selengkapnya.
- Metode untuk
OnBackPressedCallbackdanOnBackPressedDispatchertelah ditandai sebagai@MainThread. (aosp/943813) - Metode
handleOnBackPressed()tidak lagi menampilkanboolean. Sebagai gantinya,OnBackPressedCallbacksekarang merupakan class abstrak yang dapat diaktifkan atau dinonaktifkan -handleOnBackPressed()hanya akan dipanggil saat metodeisEnabled()baru menampilkan true. Dalam hal ini, Anda harus menangani tombol kembali. (aosp/944518) - Metode
addCallbackOnBackPressedDispatchertidak lagi menampilkan instanceCancellable.OnBackPressedCallbacksekarang berisi metoderemove()yang memenuhi fungsionalitas ini, yang memungkinkan Anda memanggilremove()selamahandleOnBackPressed(). (aosp/944519) (aosp/946316) activity-ktxsekarang berisi callback yang dibatasi penerima untukaddCallbackyang menerima lambda yang mengimplementasikanhandleOnBackPressed()serta memiliki akses keisEnableddanremove()(aosp/944520)
Versi 1.0.0-alpha06
3 April 2019
androidx.activity:activity:1.0.0-alpha06 dan androidx.activity:activity-ktx:1.0.0-alpha06 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Perubahan API
- ComponentActivity sekarang berisi konstruktor kedua yang menggunakan
@LayoutRes int, menggantikan perilaku sebelumnya yang menganotasi class AppCompatActivity dengan@ContentView. Pendekatan ini berfungsi baik dalam modul library maupun aplikasi. (b/128352521) - API terkait
OnBackPressedCallbackpada ComponentActivity tidak digunakan lagi dan digantikan denganOnBackPressedDispatcherbaru, yang dapat diambil melaluigetOnBackPressedDispatcher(). (aosp/922523) - Metode untuk menambahkan
OnBackPressedCallbackbaru keOnBackPressedDispatchersekarang menampilkan objekCancellable, yang memungkinkan penghapusan callback tanpa memerlukan referensi eksplisit keOnBackPressedDispatcher. (aosp/922523) - Penambahan
OnBackPressedCallbackdenganLifecycleOwneryang terkait kini menghasilkan penambahanOnBackPressedCallbacksaat Lifecycle dimulai dan penghapusannya saat Lifecycle dihentikan. (aosp/922523)
Versi 1.0.0-alpha05
13 Maret 2019
androidx.activity:activity:1.0.0-alpha05 dan
androidx.activity:activity-ktx:1.0.0-alpha05 dirilis. Daftar lengkap commit
yang disertakan dalam rilis ini dapat dilihat di sini.
Fitur baru
- Penelusuran anotasi
@ContentViewkini disimpan dalam cache (b/123709449)
Versi 1.0.0-alpha04
30 Januari 2019
androidx.activity:activity 1.0.0-alpha04 dan androidx.activity:activity-ktx 1.0.0-alpha04 dirilis.
Fitur baru
- Menambahkan dukungan untuk anotasi class
@ContentViewyang memungkinkan Anda menunjukkan file XML tata letak yang perlu di-inflate sebagai alternatif penggunaansetContentView(). (aosp/837619)
Perubahan API
- Menambahkan catatan bahwa
getViewModelStore()tidak boleh diganti dan akan dijadikan versi final dalam rilis mendatang. Harap ajukan permintaan fitur jika saat ini Anda mengganti metode ini. (aosp/837619)
Perbaikan bug
- Modul
activitysekarang bergantung pada ViewModel versi 2.1.0-alpha02 agar sesuai dengan dependensi modulactivity-ktx.
Versi 1.0.0-alpha03
17 Desember 2018
androidx.activity 1.0.0-alpha03 dirilis.
Fitur baru
- ComponentActivity sekarang mengimplementasikan
BundleSavedStateRegistryOwnerdan bergantung pada library SavedState yang baru dirilis [aosp/815133] - ComponentActivity sekarang menyelesaikan bug framework Android yang akan menyebabkan InputMethodManager membocorkan tampilan terfokus terakhir [b/37122102]
Versi 1.0.0-alpha02
3 Desember 2018
Perubahan API
- Menambahkan catatan bahwa
getLifecycle()tidak boleh diganti dan akan dijadikanfinaldalam rilis mendatang. Harap ajukan permintaan fitur jika saat ini Anda mengganti metode ini. (aosp/815834)
Versi 1.0.0-alpha01
5 November 2018
androidx.activity 1.0.0-alpha01 memperkenalkan
ComponentActivity, sebuah class dasar baru dari FragmentActivity dan
AppCompatActivity yang ada.
Fitur baru
- Anda kini dapat mendaftarkan
OnBackPressedCallbackmelaluiaddOnBackPressedCallbackuntuk menerima callbackonBackPressed()tanpa perlu mengganti metode dalam aktivitas Anda. - Menambahkan delegasi properti Kotlin
by viewModels()baru untuk mengambilViewModeldariComponentActivity. - Peristiwa input yang tertunda (seperti klik) sekarang dibatalkan di
onStop().
Perubahan API
- Implementasi
LifecycleOwnerdanViewModelStoreOwnertelah dialihkan dariFragmentActivitykeComponentActivity. onRetainCustomNonConfigurationInstancetidak digunakan lagi. GunakanViewModeluntuk menyimpan objek yang perlu dipertahankan meskipun konfigurasi diubah.