navigation3
Son Güncelleme | Kararlı sürüm | Sürüm Adayı | Beta Sürümü | Alfa sürümü |
---|---|---|---|---|
27 Ağustos 2025 | - | - | - | 1.0.0-alpha08 |
Bağımlılıkları bildirme
navigation3'e bağımlılık eklemek için Google Maven deposunu projenize eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.
Uygulamanız veya modülünüz için build.gradle
dosyasına ihtiyacınız olan yapılarla ilgili bağımlılıkları ekleyin:
Groovy
dependencies { implementation "androidx.navigation3:navigation3-runtime:1.0.0-alpha08" implementation "androidx.navigation3:navigation3-ui:1.0.0-alpha08" }
Kotlin
dependencies { implementation("androidx.navigation3:navigation3-runtime:1.0.0-alpha08") implementation("androidx.navigation3:navigation3-ui:1.0.0-alpha08") }
Bağımlılıklar hakkında daha fazla bilgi için Derleme bağımlılıkları ekleme başlıklı makaleyi inceleyin.
Geri bildirim
Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmeye yönelik fikirleriniz olursa lütfen bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.
Daha fazla bilgi için Sorun İzleyici belgelerini inceleyin.
Bu yapıyla ilgili sürüm notu yok.
Sürüm 1.0
Sürüm 1.0.0-alpha08
27 Ağustos 2025
androidx.navigation3:navigation3-*:1.0.0-alpha08
iptal edilir. 1.0.0-alpha08 sürümü bu commit'leri içerir.
Yeni Özellikler
Navigation3 Runtime
yapay ürünlerine yeni Kotlin MultiPlatform (KMP) hedefleri eklendi.Navigation3 Runtime
artık toplamda şu platformları destekliyor: JVM (Android ve Masaüstü), Native (Linux, iOS, watchOS, macOS, MinGW) ve Web (JavaScript, WasmJS). (I55078, b/424410398, b/419294028, b/419046226). Not: Bu,Navigation3 UI
yapısı için KMP hedefleri sağlamaz. Diğer platformlarda kendi özelNavDisplay
uygulamanızı oluşturmanız gerekir. Desteklenmesini istiyorsanız lütfen buradan Jetbrains sorununa oy verin ve ek destek için ilerleme durumunu takip edin.NavDisplayInfo
nesnesi artık herkese açık veNavDisplay
öğesinden görünür girişlerin listesini almak için kullanılabilir. (Ibc91f)
API Değişiklikleri
- Durum geri yükleme işlemini gerçekleştirmek için
rememberNavBackStack
ile birlikte kullanılacak yeni birNavBackStackSerializer
eklendi.rememberNavBackStack()
artık kendi yapılandırmanızı sağlamak için kullanılabilecek birSavedStateConfiguration
de alıyor. (I2f4d2, I4cd58, b/420443609)
Hata Düzeltmeleri
- Gezinmenin yanlış yaşam döngüsü etkinliklerinin tetiklenmesine neden olduğu sorun düzeltildi. (I8bf6d, b/425901162, b/434109022)
Bilinen Sorunlar
- I8bf6d tarafından eklenen bir hata nedeniyle yaşam döngüleri, sahneler yerine tek tek girişlere göre belirleniyordu. Bu durum, birden fazla ekran içeren sahnelerde yaşam döngüsünün bozulmasına neden oluyordu. Bu hata, bir sonraki sürümde düzeltildi. (b/440145700)
Sürüm 1.0.0-alpha07
13 Ağustos 2025
androidx.navigation3:navigation3-*:1.0.0-alpha07
iptal edilir. 1.0.0-alpha07 sürümü bu commit'leri içerir.
MinSdk Güncellemesi
- AndroidX için varsayılan minSdk, API 21'den API 23'e taşındı (Ibdfca, b/380448311, b/435705964, b/435705223).
API Değişiklikleri
SavedStateNavEntryDecorator
artık durumları kaydetmek ve geri yüklemek içinSaveableStateProvider
'de yerleşik olarak bulunanSaveableStateRegistry
özelliğini kullanıyor. (If8d9a)predictivePopTransitionSpec
artık kaydırma kenarını parametre olarak sağlıyor. Bu sayede, kullanıcının Tahmini Geri hareketini hangi kenardan başlattığına bağlı olarak geçişi özelleştirebilirsiniz. (I753a8)
Hata Düzeltmeleri
- En son sahne hatırlanmadığı için özel sahnelerin sonsuza kadar yeniden hesaplanmasına neden olan sorun düzeltildi. (I7ba84, b/418153031)
Bağımlılık güncellemesi
- Navigation3 artık Navigation Event
1.0.0-alpha06
'e bağlıdır.
Sürüm 1.0.0-alpha06
30 Temmuz 2025
androidx.navigation3:navigation3-*:1.0.0-alpha06
iptal edilir. 1.0.0-alpha06 sürümü bu commit'leri içerir.
Bağımlılık Güncellemesi
- Navigation3 artık Navigation Event
1.0.0-alpha05
'e bağlıdır.
Sürüm 1.0.0-alpha05
2 Temmuz 2025
androidx.navigation3:navigation3-*:1.0.0-alpha05
iptal edilir. 1.0.0-alpha05 sürümü bu commit'leri içerir.
Davranış Değişiklikleri
NavEntry
'nın durumu artık kesinlikleNavDisplay
'ya iletilen mevcut dekoratörler listesine dayanmaktadır. Bu, geri yığınında NavEntry'lerin durumunu korumak için birden fazla geri yığını olması durumunda dekoratörlerin geri yığınlarınız boyunca değiştirilmesi gerektiği anlamına gelir. Aksi takdirde, girişler değiştirilmiş gibi değil, çıkarılmış gibi temizlenir. (I7a759, b/428033667)
Sürüm 1.0.0-alpha04
18 Haziran 2025
androidx.navigation3:navigation3-*:1.0.0-alpha04
iptal edilir. 1.0.0-alpha04 sürümü bu commit'leri içerir.
API Değişiklikleri
NavEntry.content
artık gizli.NavEntry
içeriğini çağırmak için artık çağırmak içinkey
parametresi gerektirmeyen yeniNavEntry.Content()
API'sini çağırın. (Icd0fd, b/420991203)NavEntry.key
artık özel bir alan.NavEntry
ve ilgili durumları, yenicontentKeyFactory
lambda'dan oluşturulan veNavEntry.key
'den oluşturulan kaydedilebilir bir karma ile varsayılan olarak ayarlanan yenicontentKey
alanı tarafından tanımlanmalıdır (I81a6c, b/422001357, b/420991203 I2d7d4, b/420991203, b/422841812)
Bağımlılık Değişiklikleri
- Navigation3 artık yeni
androidx.navigationevent.compose
yapay ürününe bağlıdır.
Sürüm 1.0.0-alpha03
4 Haziran 2025
androidx.navigation3:navigation3-*:1.0.0-alpha03
iptal edilir. 1.0.0-alpha03 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
Navigation3
, artık değiştirilip başka birbackStack
örneğiyle değiştirilenbackStacks
için dekoratör durumlarını temizlemeyecek. (I28a42, b/415076044)
Sürüm 1.0.0-alpha02
23 Mayıs 2025
androidx.navigation3:navigation3-*:1.0.0-alpha02
iptal edilir. 1.0.0-alpha02 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
SavedStateNavEntryDecorator
ile ilgili, aynı özellik değerlerine sahip farklı veri sınıflarında çakışmalara neden olan bir sorun düzeltildi. (b/418070648, Iff4775)- Açık bağımlılıklar bildirilmeden çalıştırıldığında kilitlenmelere neden olan eksik sınıf sorunu düzeltildi. (b/419049149, I4b4ed)
Sürüm 1.0.0-alpha01
20 Mayıs 2025
androidx.navigation3:navigation3-*:1.0.0-alpha01
iptal edilir. 1.0.0-alpha01 sürümü bu commit'leri içerir.
Yeni Özellikler
Navigation3, Jetpack Compose'da uygulama içi gezinmeyi işlemek için özel olarak oluşturulmuş yeni bir gezinme kitaplığıdır. androidx.navigation3.runtime
yapısı, yapı taşlarını sağlarken androidx.navigation3.ui
yapısı, NavDisplay
API'si aracılığıyla kullanıcı arayüzü katmanını sağlar. Geliştiriciler, kendi durumlarını doğrudan NavDisplay
composable işlevine sağlayabilir. Bu işlev, geliştirici durumundaki değişikliklere göre içeriği değiştirir.
@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 */ }
})
Daha fazla bilgi için Navigation3 kılavuzuna bakın.