navigation3
| Update Terbaru | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
|---|---|---|---|---|
| 23 September 2026 | 1.2.0 | - | - | 1.3.0-alpha01 |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada navigation3, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.
Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:
Groovy
dependencies { implementation "androidx.navigation3:navigation3-runtime:1.3.0-alpha01" implementation "androidx.navigation3:navigation3-ui:1.3.0-alpha01" }
Kotlin
dependencies { implementation("androidx.navigation3:navigation3-runtime:1.3.0-alpha01") implementation("androidx.navigation3:navigation3-ui:1.3.0-alpha01") }
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.3
Versi 1.3.0-alpha01
23 September 2026
androidx.navigation3:navigation3-*:1.3.0-alpha01 dirilis. Versi 1.3.0-alpha01 berisi commit ini.
** Perbaikan Bug **
- Memperbaiki penyerahan animasi kembali prediktif di
NavDisplaydengan bermigrasi keDeferredAnimatedContentdan menyelesaikan masalah penyerahan transisi. I145eaedd b/430807423
Tidak ada catatan rilis untuk artefak ini.
Navigation3 Versi 1.2
Versi 1.2.0
23 September 2026
androidx.navigation3:navigation3-*:1.2.0 dirilis. Versi 1.2.0 berisi commit ini.
1.2.0 kini stabil!
Perubahan penting sejak 1.1.0
Result API
- API baru ini memungkinkan penerusan hasil antara
NavEntriesmenggunakanResultEventBusyang disediakan olehLocalResultEventBusdanResultEventBusNavEntryDecorator. - Menambahkan
rememberResultEventBusuntuk mendukung pengangkatanResultEventBusdi luarResultEventBusNavEntryDecoratordan meneruskannya kerememberResultEventBusNavEntryDecorator. - Hasil yang diteruskan dapat diakses sebagai status dengan
ResultEventBus#conflateAsStateatau dikumpulkan sebagai alur hasil denganResultEffect.
Deep Link API
Navigation3 kini mendukung deep link Multiplatform Kotlin (KMP) di androidx.navigation3.runtime.deeplink melalui DeepLinkRequest, DeepLinkUri, dan DeepLinkMatcher.
DeepLinkRequestdanRequestExtras: Merepresentasikan permintaan deep link yang dibuat dariDeepLinkUri, string URI, atauIntentAndroid. Metadata permintaan tambahan dapat dilampirkan menggunakan penampungRequestExtrasyang aman untuk jenis yang dibuat dengan DSLrequestExtrasdanRequestExtrasKey<T>.DeepLinkMatcher: Merepresentasikan deep link yang dapat dicocokkan denganDeepLinkRequest. Setiap instance pencocok dikaitkan dengan kunci navigasi yang mendukung deep link ini. Tombol navigasi dapat dikaitkan dengan beberapa pencocok. MemanggilDeepLinkMatcher.matchakan menampilkanMatchResultyang berisi kunci navigasi terkait jika kecocokan berhasil. Ada dua penerapanDeepLinkMatcherdefault:UriDeepLinkMatcheruntuk mencocokkan deep link berdasarkanUri, danStaticKeyDeepLinkMatcheruntuk mencocokkan deep link hanya denganDeepLinkMatcher.Filteryang cocok dengan Boolean.BackStackMatcher:DeepLinkMatcheruntuk membuat stack kembali sintetis setelah kecocokan deep link berhasil.BackStackMatcherdapat dibuat melalui fungsi ekstensiDeepLinkMatcher.withBackStack.
Penanganan Kembali Prediktif
- Menambahkan
NavigationBackHandlerdanrememberNavigationEventStateuntuk menyederhanakan koneksiSceneStatedengan penanganan kembali prediktif (onBackCompleteddanonBackCancelled). Hal ini memungkinkan komponen UI kustom mendukung navigasi kembali standar dan gestur kembali prediktif tanpa menghitung delta data sebelumnya secara manual. - Transisi kembali prediktif yang ditingkatkan, termasuk dukungan untuk gestur kembali prediktif yang dipicu di tengah transisi selama animasi maju.
Perubahan Lainnya
NavEntry.contentKeykini secara default merupakan gabungan darikey.toString()dankey::class.toString(), sehingga mencegah terjadinya konflik kunci antara kuncidata objectyang memiliki nama sederhana yang sama di berbagai antarmuka.EntryProviderkini memprioritaskan pencocokan berdasarkan instance utama daripada jenis utama.- Menambahkan pemeriksaan lint untuk memastikan implementasi
Sceneadalahdata classatau menerapkanequalsdanhashCode.
Versi 1.2.0-rc01
9 September 2026
androidx.navigation3:navigation3-*:1.2.0-rc01 dirilis. Versi 1.2.0-rc01 berisi commit ini.
Perbaikan Bug
- Jangan izinkan nama placeholder duplikat dalam pola URI deep link. (I8985c, b/522343165)
Versi 1.2.0-beta01
26 Agustus 2026
androidx.navigation3:navigation3-*:1.2.0-beta01 dirilis. Versi 1.2.0-beta01 berisi commit ini.
Perubahan API
- Memfaktorkan ulang
DeepLinkRequest.extrasdariMap<String, Any>ke class baru yang aman untuk jenis dan mirip petaRequestExtrasyang menyimpan pasanganRequestExtrasKey<T>keT.RequestExtrasdapat dibuat instance-nya dengan DSLrequestExtras. (Ic929d, b/543883369)
Perbaikan Bug
- Memperbaiki masalah saat gestur kembali prediktif yang dipicu selama transisi maju tidak dianimasikan sebagai respons terhadap progres geser. Kembali prediktif kini akan dianimasikan dan diselesaikan dengan benar. (Icdcb0, b/456218398)
- Menambahkan pemeriksaan lint untuk memastikan implementasi
Sceneadalah class data, atau mengimplementasikan equals dan hashcode untuk memastikanSceneyang sama digunakan jika sesuai. (Ibdf0d, b/542316099) NavEntry.contentKeykini secara default adalah gabungan darikey.toString()dankey::class.toString(). Hal ini memastikan bahwa objek data yang memiliki nama yang sama tetapi menerapkan antarmuka yang berbeda tidak akan lagi memilikicontentKeyyang sama. Namun,key::classplatform JS hanya menampilkan nama class sederhana, bukan nama yang sepenuhnya memenuhi syarat, sehingga platform JS tetap harus menerapkancontentKeykustom untuk objek data dengan nama duplikat. (I1fbbb, b/512534342)- Memperbaiki
IllegalArgumentExceptionyang ditampilkan olehSaveableStateProvideruntuk kunci duplikat yang digunakan selama navigasi kembali cepat saat beberapa transisi pop sedang berlangsung. (I4d728, b/516312097)
Versi 1.2.0-alpha07
29 Juli 2026
androidx.navigation3:navigation3-*:1.2.0-alpha07 dirilis. Versi 1.2.0-alpha07 berisi commit ini.
Perubahan API
- Menambahkan class
WrappedMatchResultabstrak untuk membungkusDeepLinkMatcher.MatchResultlain. Hal ini memungkinkan hasil kecocokan yang disesuaikan ditumpuk di atas hasil kecocokan lainnya. (I7d4dc, b/470282247) Menambahkan class
BackStackMatcherbaru yang menggunakan dua parameter: instance pencocok, dan lambda builder yang memberikan hasil kecocokan pencocok input dan menampilkan stack kembali. Setelah kecocokan berhasil,BackStackMatcherakan menampilkanBackStackMatchResultyang memperluasWrappedMatchResultyang berisi hasil kecocokan asli bersama dengan stack kembali yang dibuat dengan lambda.BackStackMatcherhanya dapat dibuat dengan fungsi ekstensiDeepLinkMatcher.withBackStackbaru. (Ibf987, b/470282247)Menambahkan class abstrak
DeepLinkSerializeryang memperluasKSerializeruntuk mengenkode dan mendekodevalue : TsebagaiString.DeepLinkSerializerdapat digunakan untuk melakukan serialisasi argumen deep link non-primitif. Kompatibel denganrememberSaveabledanrememberNavBackStack. (Id3c9f, b/470282247)DeepLinkMatchertelah menambahkan parameter jenis keduaout R : DeepLinkMatcher.MatchResult<T>sehingga developer dapat mengakses propertiMatchResultyang di-subclass yang ditampilkan olehDeepLinkMatcher.match()tanpa melakukan casting jenis. (I693d3, b/470282247)Batas atas
DeepLinkMatcher.MatchResult'sT telah berubah dariAny?menjadiAny. (I6bf1a)Kolom konstruktor
DeepLinkRequesturikini ditetapkan secara default ke null.uriStringkonstruktor sekunder telah diganti namanya menjadiuri. (Ia0f14, b/522194187)
Perbaikan Bug
ResultEffectsekarang menggunakanrememberUpdatedStateuntuk mengambil lambdaonResultterbaru. (I7d2a3, b/531709234)- Memperbaiki pencocokan deep link untuk segmen jalur kosong. Jika jenis argumen adalah String, jalur kosong akan diperlakukan sebagai nilai string kosong. Jika tidak, jalur kosong akan diperlakukan sebagai tidak ada nilai yang diberikan dan akan kembali ke nilai default. Jika tidak ada nilai default, pencocokan akan gagal. (I56575, b/535298128)
- Menambahkan dukungan untuk nilai kueri kosong di
DeepLinkRequest.uri. Jika argumen berjenis String, nilai kosong akan diperlakukan sebagai string kosong literal. Jika tidak, nilai kosong akan diperlakukan sebagai tidak ada nilai yang diberikan dan pencocokan akan mencoba melakukan penggantian ke nilai default. Jika tidak ada nilai default, pencocokan akan gagal. (I30343, b/535127459) EntryProviderkini memprioritaskan pencocokan berdasarkan instance utama daripada jenis utama. (Ib5ec9, b/533331924)SceneStatekini menghitung adegan sebelumnya dengan benar, dimulai dari adegan non-overlay paling atas. (I91915, b/513630541)
Versi 1.2.0-alpha06
15 Juli 2026
androidx.navigation3:navigation3-*:1.2.0-alpha06 dirilis. Versi 1.2.0-alpha06 berisi commit ini.
Perbaikan Bug
- Memperbaiki dokumentasi
UriDeepLinkMatcherpada fragmen URI untuk mengklarifikasi bahwa fragmen dengan karakter pengganti akan cocok dengan input apa pun, tetapi input tidak diekstrak sebagai argumen. (I5ad9b, b/524677091) - Memperbaiki kegagalan
UriDeepLinkMatcheruntuk mencocokkan dengan permintaan jika pola URI tidak berisi skema atau tidak dimulai dengan garis miring ganda. Misalnya,www.example.com/homekini akan cocok denganhttp://www.example.com/home. (Ia6b65, b/522791926)
Versi 1.2.0-alpha05
1 Juli 2026
androidx.navigation3:navigation3-*:1.2.0-alpha05 dirilis. Versi 1.2.0-alpha05 berisi commit ini.
API Baru
- Menambahkan API
rememberResultEventBusyang menampilkanResultEventBusyang dapat diteruskan kerememberResultEventBusNavEntryDecorator. Hal ini memungkinkan pengangkatanResultEventBusdi luarResultEventBusNavEntryDecorator. (Ia655b, b/516995400)
DeepLinkRequest
- Menambahkan dua konstruktor yang kompatibel dengan KMP - satu yang menggunakan DeepLinkUri dan satu yang menggunakan URI string mentah. (I3c088, b/513200887, b/522194187)
- (Khusus Android) Menambahkan konstruktor yang mengambil
Intent. (Ia0498, b/513200887, b/522194187) - Semua konstruktor memiliki kolom
extrastambahan untukMap<String, Any>guna melampirkan informasi permintaan tambahan. (If81d5, b/513200887) - DSL
requestExtrasbaru ditambahkan sebagai cara yang aman untuk membangun peta ekstra. DSL menyediakan fungsiputuntuk menyimpan pasanganRequestExtrasKeykeAny. Fungsi ekstensiMap<String, Any>.get(key)dapat digunakan untuk membaca dari peta denganRequestExtrasKey(I5091c, b/513200887) - (Khusus Android) Menambahkan fungsi
ActionExtrasKeydanactionExtrauntuk membuat peta tambahan denganActionExtrasKey. (Id0c90, [b/513200887] - Menambahkan fungsi
MimeTypeExtrasKeydanmimeTypeExtrauntuk membuat peta tambahan denganMimeTypeExtrasKey. (I85131, b/513200887)
DeepLinkMatcher
- Menambahkan fungsi
DeepLinkMatcher.mimeTypeFilterdanDeepLinkMatcher.actionFilteruntuk membuatDeepLinkMatcher.Filtersyang memfilterDeepLinkRequestmenurutmimeTypeatauaction(khusus Android). Kedua filter cocok berdasarkan kesamaan string dan tidak peka huruf besar/kecil. (Ie7e67, b/513191950)
Perubahan API
DeepLinkRequest
- Hapus fungsi pabrik
fromAction. Untuk membuat permintaan yang terkait dengan Tindakan, gunakan kolomDeepLinkRequest.extrasbaru.(Id0c90, b/513200887) - Menghapus fungsi pabrik
fromMimeType. Untuk membuat permintaan yang terkait dengan mimeType, gunakan kolomDeepLinkRequest.extrasbaru. (I85131, b/513200887) - (Khusus Android) Menghapus fungsi pabrik
fromIntent. Digantikan oleh konstruktor baru yang menggunakan peta Intent dan ekstra. (Ia0498, b/513200887, b/522194187) - Menghapus fungsi pabrik
fromUridanfromUriString. Digantikan oleh konstruktor baru yang menggunakanDeepLinkUriatau URI string mentah. (Id5b6f, b/522194187) DeepLinkMatcher,DeepLinkMatcher.MatchResult, dan subclass-nya kini menggunakan T kovarian (out T) sehingga kunci hierarkis tidak perlu melakukan casting jenis saat digunakan dengan Matcher. (I1e453, b/525094876)- Parameter konstruktor
UriMatchResultuntuk peta argumen kini secara default adalah peta kosong. (I3acdd) - Class abstrak
DeepLinkMatcher.Filterkini menjadi antarmuka fungsional. Kolom konstruktorfilterdihapus dan sebagai gantinya harus diteruskan langsung di subclass. (I9eb7d, b/522194187)
Perbaikan Bug
- Memperbaiki entri yang muncul menghilang segera saat muncul ke entri yang memiliki metadata bertingkat yang berisi nilai lambda. (Idb872, b/520494430)
- Memperbaiki
UriDeepLinkMatchersehingga akan menampilkanUriMatchResultnull, bukan menampilkanMissingFieldExceptionsaat argumen yang diperlukan tidak ada selama pencocokan. (I5322f, b/524663005) UriDeeplinkMatcheryang berisi URI dengan skema https hanya dapat dicocokkan dengan permintaan yang juga memiliki skema https. (Ibfe22, b/522304329)- Perbaiki
UriDeepLinkMatcheruntuk mengidentifikasi skemahttpdengan benar sebagai kecocokan positif denganhttpssaat mencocokkanDeepLinkRequestdenganUriDeepLinkMatcher. (I3a62b, b/518804264) - Pembanding
DeepLinkMatcher.MatchResultkini menampilkan 0 secara default saat dua hasil sama. (I48ddb, b/518841353) UriDeepLinkMatcherkini akan menampilkanUriMatchResultnull, bukan menampilkan pengecualian saat permintaan pencocokan gagal karena argumen wajib tidak ada. (I669a7, b/470282247, b/512923412)
Versi 1.2.0-alpha04
3 Juni 2026
androidx.navigation3:navigation3-*:1.2.0-alpha04 dirilis. Versi 1.2.0-alpha04 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah animasi overlay saat overlay bertingkat seperti
ModalBottomSheetdianimasikan ulang secara tidak terduga saat overlay di atasnya dikeluarkan. (Ia2b9e, b/502624496)
Versi 1.2.0-alpha03
19 Mei 2026
androidx.navigation3:navigation3-*:1.2.0-alpha03 dirilis. Versi 1.2.0-alpha03 berisi commit ini.
Fitur Baru
Navigation 3 kini mendukung deep link dengan DeepLinkRequest dan DeepLinkMatcher:
DeepLinkRequestdeep link yang diminta yang berisiDeepLinkUridan mimeType atau tindakan opsional(khusus Android). Selain class baru, ada fungsi pendamping untuk membuat instance denganuri,mimeType, atauaction. Platform Android juga memiliki helper untuk membuat permintaan dari Intent. (Iaaac9, b/470282247)val uriOnlyRequest = DeepLinkRequest.fromUriString("https://sampledeeplink.com/home") val uriAndMimeRequest = DeepLinkRequest.fromUriString( "https://sampledeeplink.com/user/profile?id=123", "image/png" )DeepLinkMatchermewakili deep link yang dapat dicocokkan denganDeepLinkRequest. Setiap instance pencocok dikaitkan dengan kunci navigasi yang mendukung deep link ini. Tombol navigasi dapat dikaitkan dengan beberapa pencocok. MemanggilDeepLinkMatcher.matchakan menampilkanMatchResultyang berisi kunci navigasi terkait jika kecocokan berhasil. Ada dua penerapanDeepLinkMatcherdefault:UriDeepLinkMatcheruntuk mencocokkan deep link berdasarkan Uri, danStaticKeyDeepLinkMatcheruntuk mencocokkan deep link hanya denganDeepLinkMatcher.Filteryang cocok denganBoolean. (I3798e, b/470282247)UriDeepLinkMatcherpenerapanDeepLinkMatcheryang memiliki opini dan menangani deep link dengan mencocokkanDeepLinkUridengan kunci navigasi yang dapat diserialisasi. Tindakan ini mendukung argumen deep link dari jenis Primitif atau Kumpulan primitif seperti Daftar, Array, dan Kumpulan. (I1520b, b/470282247)@Serializable data class UserKey(val id: Int): NavKey // declare a deep link supported by UserKey val userMatcher = UriDeepLinkMatcher( uriPattern = "www.sampledeeplink.com/user?userId={id}", serializer = serializer<UserKey>() ) // handle a requested deep link with fallback key val key = userMatcher.match(deepLinkRequest)?.key ?: HomeKeyMenambahkan
DeepLinkUriyang merupakan versi multiplatform kotlin dariandroid.net.Uri(Id4725, b/470282247)
Perubahan API
- Diperbarui ke
compileSdk 37agar sesuai dengan compileSdk Compose
Perbaikan Bug
- Memperbaiki
IllegalArgumentExceptionAnimatedBottomSheetSamplesaat menampilkan beberapa overlay.SceneStrategysampel kini akan menghitung dengan benar non-OverlaySceneterakhir dan menampilkannya di semua adegan overlay. (If2281, b/506733412) - Mengganti dependensi
NavigationEventke 1.1.1 yang menghapus NavigationEventHandler no-op saat dalam mode pemeriksaan untuk mengaktifkan Kembali Prediktif di Pratinjau Android Studio. (I487fd)
Versi 1.2.0-alpha02
22 April 2026
androidx.navigation3:navigation3-*:1.2.0-alpha02 dirilis. Versi 1.2.0-alpha02 berisi commit ini.
Perubahan API
- Ganti nama
onBackmenjadionBackCompleteddan tambahkanonBackCancelledke NavigationBackHandler untuk mendukung penanganan gestur kembali yang dibatalkan. (I92741) - Tambahkan
NavigationBackHandleruntuk menyederhanakan penanganan gestur kembali dan kembali prediktif saat menggunakanSceneState. Hal ini memungkinkan developer membuat komponen UI kustom yang mendukung navigasi kembali standar dan gestur prediktif dengan lebih mudah tanpa menghitung delta stack kembali secara manual. (I6a055) - Tambahkan
rememberNavigationEventStateuntuk menyederhanakan penghubunganSceneStatedengan penanganan kembali prediktif. (Iae49c)
Fitur Baru
- Menambahkan
ResultEventBusAPI untuk memungkinkan penerusan hasil antara NavEntry denganLocalResultEventBusyang disediakan olehResultEventBusNavEntryDecoratorbaru. Hasil yang diteruskan dapat dinilai sebagai status denganResultEventBus#conflateAsStateatau sebagai alur hasil denganResultEffect.
Versi 1.2.0-alpha01
8 April 2026
androidx.navigation3:navigation3-*:1.2.0-alpha01 dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Perbaikan Bug
- Mengakses
LocalNavAnimatedContentScopedariOverlayScenetidak akan lagi menyebabkanIllegalStateExceptionkarenaOverlaySceneskini disediakan denganLocalAnimatedContentScopeno-op. (I2f00c, b/486067688)
Navigation3 Versi 1.1
Versi 1.1.7
26 Agustus 2026
androidx.navigation3:navigation3-*:1.1.7 dirilis. Versi 1.1.7 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah saat gestur kembali prediktif yang dipicu selama transisi maju tidak dianimasikan sebagai respons terhadap progres geser. Kembali prediktif kini akan dianimasikan dan diselesaikan dengan benar. (Icdcb0, b/456218398)
Versi 1.1.6
12 Agustus 2026
androidx.navigation3:navigation3-*:1.1.6 dirilis. Versi 1.1.6 berisi commit ini.
Perbaikan Bug
NavEntry.contentKeykini secara default adalah gabungan darikey.toString()dankey::class.toString(). Hal ini memastikan bahwa objek data yang memiliki nama yang sama tetapi menerapkan antarmuka yang berbeda tidak akan lagi memilikicontentKeyyang sama. Namun,key::classplatform JS hanya menampilkan nama class sederhana, bukan nama yang sepenuhnya memenuhi syarat, sehingga platform JS tetap harus menerapkancontentKeykustom untuk objek data dengan nama duplikat. (I1fbbb, b/512534342)- Memperbaiki
IllegalArgumentExceptionyang ditampilkan olehSaveableStateHolderuntuk penggunaan ulang kunci saat beberapa transisi pop sedang berlangsung secara bersamaan karena pop cepat dari stack belakang. (I4d728, b/516312097)
Versi 1.1.5
29 Juli 2026
androidx.navigation3:navigation3-*:1.1.5 dirilis. Versi 1.1.5 berisi commit ini.
Perbaikan Bug
- DSL
entryProviderkini memprioritaskanNavEntryyang dibuat dengan instance kunci, misalnyaentry(key = userKey) { ... }daripadaNavEntryyang dibuat dengan class kunci sepertientry<UserKey>{ ... }.(Ib5ec9, b/533331924)
Versi 1.1.4
1 Juli 2026
androidx.navigation3:navigation3-*:1.1.4 dirilis. Versi 1.1.4 berisi commit ini.
Perbaikan Bug
- Memperbaiki entri yang muncul menghilang segera saat muncul ke entri yang memiliki metadata bertingkat yang berisi nilai lambda. (Idb872, b/520494430)
Versi 1.1.3
17 Juni 2026
androidx.navigation3:navigation3-*:1.1.3 dirilis. Versi 1.1.3 berisi commit ini.
Perbaikan Bug
Memperbaiki masalah animasi overlay saat overlay bertingkat seperti
ModalBottomSheetdianimasikan ulang secara tidak terduga saat overlay di atasnya dikeluarkan. (Ia2b9e, b/502624496)Mengubah versi dependensi
NavigationEventmenjadi 1.1.2 yang menghapusNavigationEventHandlerno-op saat dalam mode pemeriksaan untuk mengaktifkan Kembali Prediktif di Pratinjau Android Studio.
Versi 1.1.2
19 Mei 2026
androidx.navigation3:navigation3-*:1.1.2 dirilis. Versi 1.1.2 berisi commit ini.
Perbaikan Bug
- Meningkatkan versi dependensi
NavigationEventke 1.1.1 yang menghapusNavigationEventHandlerno-op saat dalam mode pemeriksaan untuk mengaktifkan Kembali Prediktif di Pratinjau Android Studio.
Versi 1.1.1
22 April 2026
androidx.navigation3:navigation3-*:1.1.1 dirilis. Versi 1.1.1 berisi commit ini.
Perbaikan Bug
- Mengakses
LocalNavAnimatedContentScopedariOverlayScenetidak akan lagi menyebabkanIllegalStateExceptionkarenaOverlaySceneskini disediakan denganLocalAnimatedContentScopeno-op. (I2f00c, b/486067688)
Versi 1.1.0
8 April 2026
androidx.navigation3:navigation3-*:1.1.0 dirilis. Versi 1.1.0 berisi commit ini.
1.1.0 kini stabil!
Perubahan penting sejak versi 1.0.0
Elemen Bersama antar-Scene
- Navigation3 kini mendukung memperlakukan adegan sebagai objek elemen bersama. Artinya, saat adegan berubah, transisi yang lancar dapat dipastikan. Anda dapat mengaktifkannya dengan meneruskan SharedTransitionScope ke NavDisplay atau ke rememberSceneState.
SceneDecoratorStrategy
- Pengenalan SceneDecoratorStrategy untuk mendukung kasus penggunaan seperti mendekorasi adegan dengan komponen UI umum atau berbagi status di seluruh adegan.
DSL NavMetadata
- Navigation3 kini menyediakan DSL metadata baru yang aman untuk jenis. DSL menggunakan antarmuka MetadataKey baru yang memungkinkan penentuan jenis kunci dan nilai yang ingin mereka berikan ke peta metadata. Hal ini juga menambahkan NavMetadataKeys baru untuk transisi NavDisplay sehingga dapat digunakan dengan DSL metadata baru untuk menambahkan transisi ke NavDisplay.
Animasi OverlayScene
- Antarmuka OverlayScene memiliki callback penangguhan onRemoved baru. Callback ini dipanggil setelah kunci yang terkait dengan adegan dihapus dari backstack, tetapi sebelum keluar dari komposisi. Hal ini memungkinkan animasi keluar yang dipanggil dalam onRemovedselesai sebelum adegan overlay dihapus dari komposisi.
Perubahan Lainnya
- NavDisplay dan rememberSceneState kini menggunakan List<SceneStrategy>, bukan parameter SceneStrategy tunggal sebelumnya yang dirangkai oleh infix then.
- Anda kini dapat menambahkan metadata secara dinamis dengan mempertimbangkan kunci entri melalui DSL EntryProvider.
Versi 1.1.0-rc01
25 Maret 2025
androidx.navigation3:navigation3-*:1.1.0-rc01 dirilis. Versi 1.1.0-rc01 berisi commit ini.
Perbaikan Bug
NavDisplaykini memastikan bahwa entri yang ditampilkan di bawah overlay memilikiLifecycleyang dibatasi padaSTARTED. Tindakan ini memastikan API sepertidropUnlessResumedterus berfungsi saat menggunakan dialog. (If209f, b/483966071)- Memperbaiki masalah di
NavDisplaysaat bernavigasi bolak-balik di antara layar yang sama dan mengganggu animasi di antara keduanya dapat menyebabkan urutan z layar menjadi salah. (I4d491, b/459419800)
Versi 1.1.0-beta01
11 Maret 2026
androidx.navigation3:navigation3-*:1.1.0-beta01 dirilis. Versi 1.1.0-beta01 berisi commit ini.
Versi 1.1.0-alpha05
25 Februari 2026
androidx.navigation3:navigation3-*:1.1.0-alpha05 dirilis. Versi 1.1.0-alpha05 berisi commit ini.
Perubahan API
NavDisplaydanrememberSceneStatekini menggunakanList<SceneStrategy>, bukan parameterSceneStrategytunggal sebelumnya yang dirangkai oleh infixthen. Hal ini lebih sesuai denganList<SceneDecoratorStrategy<T>>yang sudah digunakan oleh kedua API ini. API sebelumnya telah dihentikan penggunaannya. (I78b2c, b/482108465)- Menambahkan operator #contains metadata untuk memeriksa apakah peta metadata berisi
NavMetadataKeytertentu. (Ic30db, b/485311895) - Menambahkan
NavMetadataKeyDialogKeyuntukDialogSceneStrategyyang akan digunakan dengan DSL Metadata. (Ic7a26, b/483388817)
Versi 1.1.0-alpha04
11 Februari 2026
androidx.navigation3:navigation3-*:1.1.0-alpha04 dirilis. Versi 1.1.0-alpha04 berisi commit ini.
Fitur Baru
- Navigation3 kini menyediakan DSL metadata baru yang aman untuk jenis. DSL menggunakan antarmuka
MetadataKeybaru yang memungkinkan penentuan jenis kunci dan nilai yang ingin mereka berikan ke peta metadata. Hal ini juga menambahkanNavMetadataKeybaru untuk transisiNavDisplaysehingga dapat digunakan dengan DSLmetadatabaru untuk menambahkan transisi keNavDisplay. (Ic10ef, Ic049c,b/476213928)
Perubahan API
- Antarmuka
OverlayScenememiliki callback penangguhanonRemovedbaru. Callback ini dipanggil setelah kunci yang terkait dengan adegan dihapus dari backstack, tetapi sebelum keluar dari komposisi. Hal ini memungkinkan animasi keluar yang dipanggil dalamonRemovedselesai sebelum adegan overlay dihapus dari komposisi. (I29a72, b/440558061) SceneStrategytelah memisahkan fungsi dekorasi keSceneDecoratorStrategybaru. Antarmuka baru ini yang harus digunakan untuk menghias adegan. Ada API baru untukNavDisplaydanrememberSceneStateuntuk memungkinkan penambahanSceneDecoratorStrategies. (If9385, b/477669607, b/477670333)
Perbaikan Bug
- Memperbaiki error saat meneruskan
SharedTransitionLayoutkeNavDisplayataurememberSceneStatedan menggunakanOverlaySceneakan menyebabkan error karena penggunaanSharedTransitionLayouthanya berfungsi denganNavEntriesyang dirender sebagai bagian dariAnimatedContentdanOverlayScenedirender di jendela terpisah. (I1bb76, b/478664101)
Pembaruan Dependensi
- Dari
Navigation31.0.1:Navigation3kini bergantung padaNavigationEvent1.0.2. Hal ini memperbaikiIllegalStateExceptionyang disebabkan oleh penggunaanNavDisplayselama PratinjauAndroidStudio. (Id7212, b/477149762)
Versi 1.1.0-alpha03
28 Januari 2026
androidx.navigation3:navigation3-*:1.1.0-alpha03 dirilis. Versi 1.1.0-alpha03 berisi commit ini.
Fitur Baru
- Anda kini dapat menambahkan metadata secara dinamis dengan mempertimbangkan kunci entri melalui DSL
EntryProvider. (I942fb, b/474416976)
Versi 1.1.0-alpha02
14 Januari 2026
androidx.navigation3:navigation3-*:1.1.0-alpha02 dirilis. Versi 1.1.0-alpha02 berisi commit ini.
Fitur Baru
SceneStrategykini mendukung penyusunan adegan melalui fungsicalculatedScene(Scene)baru. Artinya,SceneStrategydapat disesuaikan untuk memberikan fungsi tambahan ke adegan lain. (I5df7c,b/440333896)
Versi 1.1.0-alpha01
3 Desember 2025
androidx.navigation3:navigation3-*:1.1.0-alpha01 dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Perubahan API
Navigation3kini mendukung memperlakukan adegan sebagai objek elemen bersama. Artinya, saat adegan berubah, transisi yang lancar dapat dipastikan. Anda dapat mengaktifkannya dengan meneruskanSharedTransitionScopekeNavDisplayatau kerememberSceneState. (I15868)
Versi 1.0
Versi 1.0.1
11 Februari 2026
androidx.navigation3:navigation3-*:1.0.1 dirilis. Versi 1.0.1 berisi commit ini.
Pembaruan Dependensi
Navigation3sekarang bergantung padaNavigationEvent1.0.2. Hal ini memperbaikiIllegalStateExceptionyang disebabkan oleh penggunaanNavDisplayselama PratinjauAndroidStudio. (Id7212, b/477149762)
Versi 1.0.0
19 November 2025
androidx.navigation3:navigation3-*:1.0.0 dirilis. Versi 1.0.0 berisi commit ini.
Memperkenalkan Navigation3!
- Library Navigation3 kini stabil. Navigation3 adalah pendekatan pertama AndroidX Compose untuk navigasi.
- Untuk mengetahui informasi selengkapnya, lihat postingan blog pengumuman kami, buka referensi, dan coba resepnya.
Versi 1.0.0-rc01
5 November 2025
androidx.navigation3:navigation3-*:1.0.0-rc01 dirilis. Versi 1.0.0-rc01 berisi commit ini.
Perbaikan Bug
NavDisplaykini menetapkanLocalLifecycleOwnerdi tingkatSceneyang memungkinkan penulis adegan menentukan apakah semua transisi telah selesai dengan memeriksa apakahLifecycle.StateadalahRESUMED. PerilakuLocalLifecycleOwnerdi tingkatNavEntrytidak berubah: juga tetap dibatasi padaSTARTEDjika transisi sedang berlangsung dan juga dibatasi padaCREATEDjikaNavEntrytersebut telah dikeluarkan dari stack belakang dan sedang dalam proses animasi keluar. (I03113, b/454045829)
Versi 1.0.0-beta01
22 Oktober 2025
androidx.navigation3:navigation3-*:1.0.0-beta01 dirilis. Versi 1.0.0-beta01 berisi commit ini.
Perubahan API
SceneStrategyScopesekarang hanya memiliki konstruktor publik tanpa argumen, yang cocok untuk mengujiSceneStrategydanSceneyang ditampilkan secara terpisah. Untuk kasus penggunaan yang lebih kompleks, gunakanrememberSceneState(). (I8440c, b/451679047)
Perbaikan Bug
- Memperbaiki loop tak terbatas saat menggabungkan
SceneStrategydenganthen. (Iba3f0, b/450323470) - Memperbaiki kedipan layar saat menukar
backStackyang diteruskan keNavDisplaydan menggunakan animasi. (Ief7b5, b/450967248)
Versi 1.0.0-alpha11
8 Oktober 2025
androidx.navigation3:navigation3-*:1.0.0-alpha11 dirilis. Versi 1.0.0-alpha11 berisi commit ini.
Perubahan API
- Metode
calculateScenepadaSceneStrategytidak lagi@Composable. Sebagai gantinya, pertimbangkan untuk memindahkan pekerjaan ini ke konstruksi metodeSceneStrategy(yaitu, dalam metoderememberMySceneStrategy()) yang sepenuhnya memungkinkan Anda menentukan masa aktif nilairememberSaveableatau pernyataanrememberutama dari nilai yang benar. (If1733, b/448709506) - Parameter
onBackuntukSceneStrategy.calculateScenetelah dipindahkan ke cakupan penerima baruSceneStrategyScopeuntuk memperjelas bahwa ini adalah parameter opsional dan menyediakan titik ekstensi untuk fitur Navigation3 mendatang. (I3aea3, b/448460407) - Lambda
onBackyang diteruskan keNavDisplaydan keSceneStrategyAnda tidak lagi menyediakan parametercount: Intuntuk menunjukkan kapan beberapa entri harus dikeluarkan. Sebagai gantinya, lambda() -> Unitkini akan dipanggil beberapa kali berturut-turut dalam kasus langka saat Scene Anda meminta beberapa entri muncul. (Idedb5, b/446989346) - Hapus class
NavEntryWrapperdan ganti fungsinya dengan classNavEntryakhir dengan konstruktor sekunder baru yang menggunakanNavEntrydengan konten baru. Hal ini akan memungkinkan dukungan berkelanjutan untuk membungkus entri dengan konten baru. (I7da2a, b/444447130) - Fungsi
navEntryDecoratoryang membuat dan menampilkanNavEntryDecoratortelah dihapus dan diganti dengan classNavEntryDecoratoryang sekarang dibuat publik dan terbuka untuk sub-classing. (If81f8, b/444447434, b/447381176) SavedStateNavEntryDecoratortelah diganti namanya menjadiSaveableStateHolderNavEntryDecoratorkarena menghiasi entri denganSaveableStateHolder. Dekorator juga telah difaktorkan ulang dari fungsi menjadi class karena secara fungsional merupakan factory untukNavEntryDecorator. (Ie6013, b/447381176)- Tampilan kustom yang menggunakan
SceneStatesebagai alternatif untuk menggunakanNavDisplaytidak lagi diwajibkan untuk menggunakan komposisi lokalLocalEntriesToRenderInCurrentScene, yang kini bersifat internal. (Ic40ef, b/414668196) - Menghapus
SceneSetupNavEntryDecoratordanrememberSceneSetupNavEntryDecorator()dari tampilan API publik. Fungsi ini kini disertakan secara default tanpa mengharuskan Anda menyertakannya secara manual. (Ieae42, b/444479133) NavEntry,DialogScene,SinglePaneScene, danSceneStatekini mengimplementasikan equals. (I96121)- Antarmuka adegan memiliki kolom metadata baru untuk melampirkan metadata khusus adegan untuk NavDisplay. Hal ini memungkinkan Scene mengganti metadata pada
NavDisplay, misalnya dengan transisi. (I1fd96, b/443955625) - Sederhanakan tanda tangan
rememberNavBackStackdengan menghapus parameter jenis generik yang berlebihan. Fungsi ini kini menerimavararg elements: NavKey. (I03e45) - Animasi default untuk
NavDisplaykini menjadi bagian dari API umum yang memungkinkannya dipanggil dari semua platform. (I71af9, b/447147159) - Ganti nama
EntryProviderBuildermenjadiEntryProviderScopeuntuk mencerminkan secara akurat bahwa class tersebut adalah DSL Kotlin yang menyediakan cakupan untuk membangunNavEntries. (Ia7465)
Perbaikan Bug
rememberNavBackStack()kini menerapkan serialisasi polimorfik untuk NavKey dan memerlukanSavedStateConfigurationkustom yang dikonfigurasi untuk memastikan pemulihan status yang benar. KDoc telah diperbarui untuk mencerminkan persyaratan bahwa semua subjenis NavKey harus didaftarkan di SerializersModule yang disediakan. (I6de37,I782f2, b/446664383)
Versi 1.0.0-alpha10
24 September 2025
androidx.navigation3:navigation3-*:1.0.0-alpha10 dirilis. Versi 1.0.0-alpha10 berisi commit ini.
Perubahan API
- Menambahkan overload
NavDisplaybaru yang menggunakan daftarNavEntry<T>yang telah dihiasi olehrememberDecoratedNavEntries. (I4025b, b/441940314) - Memindahkan
DialogSceneke paket baru. (Ia5840) - Menghapus API publik
DecorateNavEntry. Sebagai gantinya, gunakanrememberDecoratedNavEntriesuntuk membungkus NavEntry dengan daftar dekorator. (Id8c09) - UI Navigation3 kini menyediakan properti
transitionSpecdefault baru. (Ibcabd) - Menambahkan objek
SceneStatebaru untuk membantu mengelola adegan. Hal ini juga menyediakan overloadNavDisplaybaru yang menggunakanSceneStatedanNavigationEventState. (Idfb46, b/444479133) NavDisplaykini memungkinkan Anda menyesuaikan transisi berdasarkanSceneyang akan Anda tuju dan dari mana Anda berasal dengan melihatcurrentStatedantargetStateTransition. (I906cc, b/443872322)NavigationEventInfosekarang menjadiabstract class, bukaninterface. Perbarui semua implementasi kustom untuk mewarisi dari class (misalnya,data class MyInfo : NavigationEventInfo()). (I1e59c, b/444734264)- API handler
navigationevent-composetelah diupdate.NavigationEventHandlerdanNavigationBackHandler(dan varian) kini mendukung overload baru yang menerimaNavigationEventStateyang diangkat. Overload sederhana (mengambilcurrentInfo) dipertahankan dan kini menggunakan model status baru ini secara internal. (Ic3251, b/444734264) - Semua Scene API telah dipindahkan dari navigation3-ui ke navigation3-runtime. Artinya, kini tersedia di semua platform yang didukung oleh navigation3-runtime. (I431d0, b/444449993)
- Menambahkan overload
rememberDecoratedNavEntriesbaru yang menggunakan daftarNavEntryuntuk menghias. Entri input dapat didekorasi dengan dekorator entri lainnya. (I5a034, b/444230270) - Menghapus parameter jenis wildcard navigation3 (I02540)
- Meningkatkan penanganan generik untuk DSL
entryProvider. Jika sebelumnya Anda mengimporandroidx.navigation3.runtime.entry, hal ini tidak lagi diperlukan. (I299fc) - Batasi kelebihan beban
NavBackStackSerializerberbasis refleksi ke Android. Hal ini mencegah kegagalan serialisasi runtime implisit pada platform non-Android dengan menerapkan penggunaan penggantianSavedStateConfigurationeksplisit dalam kode multiplatform. (I73313, b/420443609) - Menjadikan
swipeEdgeNavigationEventsebagai@IntDef(Icee54, b/443950342) - Membatasi serialisasi
NavBackStackke Android. Hal ini mencegah kegagalan runtime di platform non-Android. Untuk penyimpanan status multiplatform, gunakan penggantianrememberNavBackStackdenganSavedStateConfigurationeksplisit. (I1e418, b/420443609)
Perbaikan Bug
- Memperbaiki error selama kembali prediktif saat
NavDisplaybertingkat memiliki satu entri turunan. (I2cdc0, b/441933162)
Versi 1.0.0-alpha09
10 September 2025
androidx.navigation3:navigation3-*:1.0.0-alpha09 dirilis. Versi 1.0.0-alpha09 berisi commit ini.
Perubahan API
DecoratedNavEntryProvidertelah diganti denganrememberDecoratedNavEntriesyang membuat dan menampilkan NavEntry yang dihiasi dengan daftar dekorator yang disediakan (I0fe1c, b/441328236)NavBackStacksekarang bersifat generik untuk jenisNavKey. Hal ini memungkinkan aplikasi dan library menentukan jenis kunci kustom untuk tumpukan belakangnya, bukan hanya dibatasi padaNavKey. (I4d190,Iad2f4, b/420443609)NavBackStackkini menjadi@kotlinx.serialization.Serializable, sehingga memungkinkan penyimpanan dan pemulihan status navigasi di seluruh penghentian proses dan perubahan konfigurasi tanpa boilerplate tambahan. (I2c3cf, b/420443609)RememberNavBackStacktelah dipindahkan kecommonMainuntuk memastikan bahwa diberikan di semua target platform. (Id69e7, b/420443609)
Perbaikan Bug
NavDisplaysekarang memindahkan setiapNavEntrykeLifecycle.Stateyang benar dengan benar. (I30aac, b/440145700)- Memperbaiki masalah saat
NavDisplaymengabaikanNavigationEventDispatcherOwnerbertingkat yang ditetapkan melaluiLocalNavigationEventDispatcherOwnerlibraryNavigationEvent. (I6224a)
Perubahan Dependensi
- Navigation3 kini bergantung pada NavigationEvent Alpha08.
Versi 1.0.0-alpha08
27 Agustus 2025
androidx.navigation3:navigation3-*:1.0.0-alpha08 dirilis. Versi 1.0.0-alpha08 berisi commit ini.
Fitur Baru
- Menambahkan target Multiplatform Kotlin (KMP) baru ke artefak
Navigation3 Runtime.Navigation3 Runtimekini mendukung total platform berikut: JVM (Android dan Desktop), Native (Linux, iOS, watchOS, macOS, MinGW), dan Web (JavaScript, WasmJS). (I55078, b/424410398, b/419294028, b/419046226). Catatan: Hal ini tidak menyediakan target KMP untuk artefakNavigation3 UI. Di platform lain, Anda harus menerapkanNavDisplaykustom Anda sendiri. Jika Anda ingin melihatnya didukung, berikan suara pada masalah Jetbrains di sini dan pantau progresnya untuk mendapatkan dukungan tambahan di sana. - Objek
NavDisplayInfokini bersifat publik dan dapat digunakan untuk mengambil daftar entri yang terlihat dariNavDisplay. (Ibc91f)
Perubahan API
- Menambahkan
NavBackStackSerializerbaru untuk digunakan bersama denganrememberNavBackStackguna melakukan pemulihan status.rememberNavBackStack()kini juga menggunakanSavedStateConfigurationyang dapat digunakan untuk memberikan konfigurasi Anda sendiri. (I2f4d2, I4cd58, b/420443609)
Perbaikan Bug
- Memperbaiki masalah saat navigasi akan menyebabkan peristiwa Siklus Proses yang salah dipicu. (I8bf6d, b/425901162, b/434109022)
Masalah Umum
- Ada bug yang diperkenalkan oleh I8bf6d yang menyebabkan Siklus Proses didasarkan pada adegan, bukan entri individual, yang merusak Siklus Proses untuk kasus apa pun saat
keyyang diberikan keNavEntrybukanStringatauNavEntryAnda belum mengganticontentKeydan menyetelnya sama dengankey(perhatikan bahwa tindakan ini memastikan kunci Anda dapat disimpan keBundle). Bug ini telah diperbaiki untuk rilis berikutnya. (b/440145700)
Versi 1.0.0-alpha07
13 Agustus 2025
androidx.navigation3:navigation3-*:1.0.0-alpha07 dirilis. Versi 1.0.0-alpha07 berisi commit ini.
Update MinSdk
- minSdk default untuk AndroidX telah dipindahkan dari API 21 ke API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
Perubahan API
SavedStateNavEntryDecoratorsekarang menggunakanSaveableStateRegistryyang ada diSaveableStateProvideruntuk menyimpan dan memulihkan status. (If8d9a)predictivePopTransitionSpeckini menyediakan tepi geser sebagai parameter, sehingga Anda dapat menyesuaikan transisi berdasarkan tepi tempat pengguna memulai gestur Kembali Prediktif. (I753a8)
Perbaikan Bug
- Memperbaiki masalah yang menyebabkan adegan kustom dihitung ulang tanpa batas karena adegan terbaru tidak diingat. (I7ba84, b/418153031)
Pembaruan dependensi
- Navigation3 kini bergantung pada Navigation Event
1.0.0-alpha06.
Versi 1.0.0-alpha06
30 Juli 2025
androidx.navigation3:navigation3-*:1.0.0-alpha06 dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Pembaruan Dependensi
- Navigation3 kini bergantung pada Navigation Event
1.0.0-alpha05.
Versi 1.0.0-alpha05
2 Juli 2025
androidx.navigation3:navigation3-*:1.0.0-alpha05 dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Perubahan Perilaku
- Status
NavEntrykini sepenuhnya didasarkan pada daftar dekorator saat ini yang diteruskan keNavDisplay. Artinya, dekorator harus ditukar di sepanjang data sebelumnya jika ada beberapa data sebelumnya untuk mempertahankan status NavEntry pada data sebelumnya. Jika tidak, status akan dihapus seolah-olah entri dikeluarkan (bukan ditukar). (I7a759, b/428033667)
Versi 1.0.0-alpha04
18 Juni 2025
androidx.navigation3:navigation3-*:1.0.0-alpha04 dirilis. Versi 1.0.0-alpha04 berisi commit ini.
Perubahan API
NavEntry.contentkini bersifat pribadi. Untuk memanggil kontenNavEntry, panggil APINavEntry.Content()baru yang tidak lagi memerlukan parameterkeyuntuk dipanggil. (Icd0fd, b/420991203)NavEntry.keykini menjadi kolom pribadi.NavEntrydan status relevannya harus diidentifikasi oleh kolomcontentKeybaru yang dihasilkan dari lambdacontentKeyFactorybaru dan secara default menggunakan hash yang dapat disimpan yang dihasilkan dariNavEntry.key(I81a6c, b/422001357, b/420991203 I2d7d4, b/420991203, b/422841812)
Perubahan Dependensi
- Navigation3 kini bergantung pada artefak
androidx.navigationevent.composebaru.
Versi 1.0.0-alpha03
4 Juni 2025
androidx.navigation3:navigation3-*:1.0.0-alpha03 dirilis. Versi 1.0.0-alpha03 berisi commit ini.
Perbaikan Bug
Navigation3tidak akan lagi menghapus status dekorator untukbackStacksyang telah ditukar dan diganti dengan instancebackStacklain. (I28a42, b/415076044)
Versi 1.0.0-alpha02
23 Mei 2025
androidx.navigation3:navigation3-*:1.0.0-alpha02 dirilis. Versi 1.0.0-alpha02 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah pada
SavedStateNavEntryDecoratoryang menyebabkan konflik untuk class data yang berbeda dengan nilai properti yang sama. (b/418070648, Iff4775) - Memperbaiki masalah class yang hilang yang akan menyebabkan error saat dijalankan tanpa mendeklarasikan dependensi eksplisit. (b/419049149, I4b4ed)
Versi 1.0.0-alpha01
20 Mei 2025
androidx.navigation3:navigation3-*:1.0.0-alpha01 dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Fitur Baru
Navigation3 adalah library navigasi baru yang dibuat khusus untuk menangani navigasi dalam aplikasi Jetpack Compose. Artefak androidx.navigation3.runtime menyediakan blok penyusun, sedangkan artefak androidx.navigation3.ui menyediakan lapisan UI melalui API NavDisplay. Developer dapat memberikan statusnya sendiri secara langsung ke fungsi composable NavDisplay, yang mengubah konten berdasarkan perubahan status developer.
@Serialiable object Home : NavKey
@Serialiable object Chat : NavKey
val backStack = rememberNavBackStack(Home)
NavDisplay(backStack, entryProvider = entryProvider {
entry<Home> {
Column {
Text(“Home”)
Button(onClick = { backStack.add(Chat) } ) {
Text(“Go to Chat”)
}
}
}
entry<Chat> { /* My Composable Content */ }
})
Untuk mengetahui informasi selengkapnya, lihat panduan Navigation3.