navigation3

  
Navigation 3 ist eine neue Navigationsbibliothek, die für die Verwendung mit Compose entwickelt wurde.
Letzte Aktualisierung Stabile Version Releasekandidat Beta-Ausgabe Alpharelease
2. Juli 2025 - - 1.0.0-alpha05

Abhängigkeiten deklarieren

Wenn Sie eine Abhängigkeit von navigation3 hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:

Cool

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")
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Lassen Sie es uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können für ein vorhandenes Problem abstimmen, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung.

Für dieses Artefakt gibt es keine Versionshinweise.

Version 1.0

Version 1.0.0-alpha05

2. Juli 2025

androidx.navigation3:navigation3-*:1.0.0-alpha05 wird veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

Geändertes Verhalten

  • Der Status von NavEntry basiert jetzt ausschließlich auf der aktuellen Liste der Dekoratoren, die an NavDisplay übergeben werden. Das bedeutet, dass Dekoratoren bei mehreren Backstacks entlang Ihrer Backstacks getauscht werden sollten, um den Status der NavEntries im Backstack beizubehalten. Andernfalls werden die Status so gelöscht, als wären die Einträge entfernt worden (anstatt eines Tauschs). (I7a759, b/428033667)

Version 1.0.0-alpha04

18. Juni 2025

androidx.navigation3:navigation3-*:1.0.0-alpha04 wird veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

API-Änderungen

  • NavEntry.content ist jetzt privat. Um NavEntry-Inhalte aufzurufen, rufen Sie die neue NavEntry.Content()-API auf. Für den Aufruf ist kein key-Parameter mehr erforderlich. (Icd0fd, b/420991203)
  • NavEntry.key ist jetzt ein privates Feld. Die NavEntry und die zugehörigen Status sollten über das neue Feld contentKey identifiziert werden. Dieses wird aus der neuen Lambda-Funktion contentKeyFactory generiert und hat standardmäßig einen speicherbaren Hash, der aus NavEntry.key generiert wird (I81a6c, b/422001357, b/420991203 I2d7d4, b/420991203, b/422841812).

Änderungen an Abhängigkeiten

  • Navigation3 hängt jetzt vom neuen androidx.navigationevent.compose-Artefakt ab.

Version 1.0.0-alpha03

4. Juni 2025

androidx.navigation3:navigation3-*:1.0.0-alpha03 wird veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

Fehlerkorrekturen

  • Navigation3 löscht nicht mehr die Dekoratorstatus für backStacks, die ausgetauscht und durch eine andere backStack-Instanz ersetzt wurden. (I28a42, b/415076044)

Version 1.0.0-alpha02

23. Mai 2025

androidx.navigation3:navigation3-*:1.0.0-alpha02 wird veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Ein Problem mit dem SavedStateNavEntryDecorator wurde behoben, das zu Kollisionen für verschiedene Datenklassen mit denselben Attributwerten geführt hat. (b/418070648, Iff4775)
  • Ein Problem mit einer fehlenden Klasse wurde behoben, das zu Abstürzen geführt hat, wenn die App ohne explizite Abhängigkeiten ausgeführt wurde. (b/419049149, I4b4ed)

Version 1.0.0-alpha01

20. Mai 2025

androidx.navigation3:navigation3-*:1.0.0-alpha01 wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

Navigation3 ist eine neue Navigationsbibliothek, die speziell für die In-App-Navigation mit Jetpack Compose entwickelt wurde. Das androidx.navigation3.runtime-Artefakt enthält die Bausteine, während das androidx.navigation3.ui-Artefakt die UI-Ebene über die NavDisplay API bereitstellt. Entwickler können ihren eigenen Status direkt an die zusammensetzbare Funktion NavDisplay übergeben. Der Inhalt wird dann basierend auf Änderungen im Entwicklerstatus geändert.

@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 */ }
})

Weitere Informationen finden Sie im Navigation3-Leitfaden.