navigation3
Son Güncelleme | Kararlı sürüm | Sürüm Adayı | Beta Sürümü | Alfa sürümü |
---|---|---|---|---|
2 Temmuz 2025 | - | - | - | 1.0.0-alpha05 |
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:
Eski
dependencies { implementation "androidx.navigation3.navigation3-runtime:1.0.0-alpha05" implementation "androidx.navigation3.navigation3-ui:1.0.0-alpha05" }
Kotlin
dependencies { implementation("androidx.navigation3.navigation3-runtime:1.0.0-alpha05") implementation("androidx.navigation3.navigation3-ui:1.0.0-alpha05") }
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-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 süslemelerin 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. Sürüm 1.0.0-alpha03, 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 uygulama içi gezinmesini 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.