navigation3

  
Navigation 3 היא ספריית ניווט חדשה שמיועדת לעבודה עם Compose.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסה אלפא
18 ביוני 2025 - - - 1.0.0-alpha04

הצהרת יחסי תלות

כדי להוסיף תלות ב-navigation3, צריך להוסיף את מאגר Google Maven לפרויקט. למידע נוסף, אפשר לקרוא את המאמר מאגר Maven של Google.

מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle של האפליקציה או המודול:

Groovy

dependencies {
    implementation "androidx.navigation3.navigation3-runtime:1.0.0-alpha04"
    implementation "androidx.navigation3.navigation3-ui:1.0.0-alpha04"
}

Kotlin

dependencies {
    implementation("androidx.navigation3.navigation3-runtime:1.0.0-alpha04")
    implementation("androidx.navigation3.navigation3-ui:1.0.0-alpha04")
}

מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.

דיווח על בעיה חדשה

מידע נוסף זמין במסמכי התיעוד של Issue Tracker.

אין הערות לגבי הגרסה של הארטיפקט הזה.

גירסה 1.0

גרסה 1.0.0-alpha04

18 ביוני 2025

androidx.navigation3:navigation3-*:1.0.0-alpha04 משוחרר. הגרסה 1.0.0-alpha04 מכילה את ההוספות האלה.

שינויים ב-API

  • NavEntry.content עכשיו בסטטוס 'פרטי'. כדי להפעיל תוכן NavEntry, צריך להפעיל את ה-API החדש של NavEntry.Content(), שכבר לא מחייב פרמטר key להפעלה. (Icd0fd, ‏ b/420991203)
  • השדה NavEntry.key הוא עכשיו שדה פרטי. צריך לזהות את NavEntry ואת המצבים הרלוונטיים שלו באמצעות השדה החדש contentKey שנוצר מ-lambda החדש contentKeyFactory, והברירת המחדל שלו היא גיבוב שניתן לשמירה שנוצר מ-NavEntry.key (I81a6c,‏ b/422001357,‏ b/420991203 I2d7d4,‏ b/420991203,‏ b/422841812)

שינויים ביחסי התלות

  • עכשיו, Navigation3 תלוי באובייקט ה-artifact החדש androidx.navigationevent.compose.

גרסה 1.0.0-alpha03

4 ביוני 2025

androidx.navigation3:navigation3-*:1.0.0-alpha03 משוחרר. הגרסה 1.0.0-alpha03 כוללת את ההוספות האלה.

תיקוני באגים

  • Navigation3 לא ינקה יותר את מצבי ה-decorator של backStacks שהוחלפו ב-instance אחר של backStack. (I28a42, ‏ b/415076044)

גרסה 1.0.0-alpha02

23 במאי 2025

androidx.navigation3:navigation3-*:1.0.0-alpha02 משוחרר. הגרסה 1.0.0-alpha02 כוללת את ההוספות האלה.

תיקוני באגים

  • תוקנה בעיה ב-SavedStateNavEntryDecorator שגרמה להתנגשויות בין כיתות נתונים שונות עם אותם ערכי מאפיינים. (b/418070648, ‏ Iff4775)
  • תוקנה בעיה של כיתות חסרות שגרמה לקריסות במהלך הריצה ללא הצהרת יחסי תלות מפורשים. (b/419049149, ‏ I4b4ed)

גרסה 1.0.0-alpha01

20 במאי 2025

androidx.navigation3:navigation3-*:1.0.0-alpha01 משוחרר. גרסת 1.0.0-alpha01 כוללת את ההוספות האלה.

תכונות חדשות

Navigation3 היא ספריית ניווט חדשה שנוצרה במיוחד כדי לטפל בניווט בתוך האפליקציה ב-Jetpack Compose. הארטיפקט androidx.navigation3.runtime מספק את אבני הבניין, ואילו הארטיפקט androidx.navigation3.ui מספק את שכבת ממשק המשתמש דרך ה-API NavDisplay. מפתחים יכולים לספק את המצב שלהם ישירות לפונקציה הניתנת לקיבוץ NavDisplay, שמשנה את התוכן על סמך שינויים במצב של המפתח.

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

מידע נוסף זמין במדריך Navigation3.