navigation3
| העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
|---|---|---|---|---|
| 11 במרץ 2026 | 1.0.1 | - | 1.1.0-beta01 | - |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-Navigation3, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.
אתם יכולים להוסיף את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:
Groovy
dependencies { implementation "androidx.navigation3:navigation3-runtime:1.1.0-beta01" implementation "androidx.navigation3:navigation3-ui:1.1.0-beta01" }
Kotlin
dependencies { implementation("androidx.navigation3:navigation3-runtime:1.1.0-beta01") implementation("androidx.navigation3:navigation3-ui:1.1.0-beta01") }
מידע נוסף זמין במאמר הוספת יחסי תלות ב-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.
אין הערות לגבי הגרסה של הארטיפקט הזה.
גרסה 1.1
גרסה 1.1.0-beta01
11 במרץ 2026
androidx.navigation3:navigation3-*:1.1.0-beta01 מופץ. גרסה 1.1.0-beta01 מכילה את השמירות האלה.
גרסה 1.1.0-alpha05
25 בפברואר 2026
androidx.navigation3:navigation3-*:1.1.0-alpha05 מופץ. גרסה 1.1.0-alpha05 מכילה את השמירות האלה.
שינויים ב-API
- במערכות ההפעלה
NavDisplayו-rememberSceneState, הפרמטרList<SceneStrategy>מחליף את הפרמטר הקודםSceneStrategyשצורף באמצעות התוthen. השינוי הזה תואם יותר ל-List<SceneDecoratorStrategy<T>>ששני ממשקי ה-API האלה כבר מקבלים. ממשקי ה-API הקודמים הוצאו משימוש. (I78b2c, b/482108465) - נוסף אופרטור metadata #contains כדי לבדוק אם מפת המטא-נתונים מכילה את
NavMetadataKeyשצוין. (Ic30db, b/485311895) - נוספה האפשרות
NavMetadataKeyDialogKeyל-DialogSceneStrategyלשימוש עם Metadata DSL. (Ic7a26, b/483388817)
גרסה 1.1.0-alpha04
11 בפברואר 2026
androidx.navigation3:navigation3-*:1.1.0-alpha04 מופץ. גרסה 1.1.0-alpha04 מכילה את השמירות האלה.
תכונות חדשות
- Navigation3 מספק עכשיו DSL חדש של מטא-נתונים שמאובטח מפני שגיאות הקלדה. ה-DSL משתמש בממשק
MetadataKeyחדש שמאפשר להגדיר את סוגי המפתח והערך שרוצים לספק למפת המטא-נתונים. בנוסף, נוספוNavMetadataKeyחדשים למעברים שלNavDisplay, כדי שאפשר יהיה להשתמש בהם עםmetadataDSL החדש כדי להוסיף מעברים ל-NavDisplay. (Ic10ef, Ic049c,b/476213928)
שינויים ב-API
- בממשק של
OverlaySceneיש עכשיוonRemovedקריאה חוזרת להשעיה. הקריאה החוזרת הזו מופעלת אחרי שמסירים מהמערך האחורי מפתח שמשויך לסצנה, אבל לפני שהוא יוצא מהקומפוזיציה. ההגדרה הזו מאפשרת לאנימציות יציאה שנקראות בתוךonRemovedלהסתיים לפני שהסצנה של שכבת העל מוסרת מהקומפוזיציה. (I29a72, b/440558061) - הפונקציה
SceneStrategyפוצלה לפונקציה חדשהSceneDecoratorStrategy. הממשק החדש הזה הוא הממשק שבו צריך להשתמש כדי להוסיף סצנות. יש ממשקי API חדשים ל-NavDisplayול-rememberSceneStateשמאפשרים להוסיףSceneDecoratorStrategies. (If9385, b/477669607, b/477670333)
תיקוני באגים
- תוקנה שגיאה שבה העברה של
SharedTransitionLayoutאלNavDisplayאו אלrememberSceneStateושימוש ב-OverlaySceneכלשהו גרמו לקריסה, כי השימוש ב-SharedTransitionLayoutפועל רק עםNavEntriesשמעובדים כחלק מ-AnimatedContent, ו-OverlaySceneמעובדים בחלונות נפרדים משלהם. (I1bb76, b/478664101)
עדכון תלות
- מגרסה
Navigation31.0.1:Navigation3עכשיו יש תלות בגרסהNavigationEvent1.0.2. העדכון הזה פותר בעיהIllegalStateExceptionשנגרמה כתוצאה משימוש ב-NavDisplayבמהלךAndroidStudioתצוגות מקדימות. (Id7212, b/477149762)
גרסה 1.1.0-alpha03
28 בינואר 2026
androidx.navigation3:navigation3-*:1.1.0-alpha03 מופץ. גרסה 1.1.0-alpha03 מכילה את השמירות האלה.
תכונות חדשות
- עכשיו אפשר להוסיף מטא-נתונים באופן דינמי באמצעות
EntryProviderDSL, תוך התחשבות במפתח הרשומה. (I942fb, b/474416976)
גרסה 1.1.0-alpha02
14 בינואר 2026
androidx.navigation3:navigation3-*:1.1.0-alpha02 מופץ. גרסה 1.1.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
-
SceneStrategyתומך עכשיו בהטמעה של סצנות באמצעות הפונקציה החדשהcalculatedScene(Scene). כלומר, אפשר להתאים אישית אתSceneStrategyכדי לספק פונקציונליות נוספת לסצנות אחרות. (I5df7c,b/440333896)
גרסה 1.1.0-alpha01
3 בדצמבר 2025
androidx.navigation3:navigation3-*:1.1.0-alpha01 מופץ. גרסה 1.1.0-alpha01 מכילה את השמירות האלה.
שינויים ב-API
-
Navigation3תומך עכשיו בטיפול בסצנות כאובייקט של רכיב משותף. המשמעות היא שכאשר הסצנות משתנות, אפשר לוודא שהמעבר ביניהן יהיה חלק. כדי להפעיל את ההגדרה הזו, מעביריםSharedTransitionScopeאלNavDisplayאו אלrememberSceneState. (I15868)
גירסה 1.0
גרסה 1.0.1
11 בפברואר 2026
androidx.navigation3:navigation3-*:1.0.1 מופץ. גרסה 1.0.1 מכילה את השמירות האלה.
עדכון תלות
-
Navigation3תלוי עכשיו ב-NavigationEvent1.0.2. העדכון הזה פותר בעיהIllegalStateExceptionשנגרמה כתוצאה משימוש ב-NavDisplayבמהלךAndroidStudioתצוגות מקדימות. (Id7212, b/477149762)
גרסה 1.0.0
19 בנובמבר 2025
androidx.navigation3:navigation3-*:1.0.0 מופץ. גרסה 1.0.0 מכילה את השמירות האלה.
חדש: Navigation3!
- ספריית Navigation3 יציבה עכשיו. Navigation3 היא גישה שמבוססת על AndroidX Compose לניווט.
- מידע נוסף זמין בפוסט שלנו בבלוג. אפשר גם לעיין במשאבים ולנסות את המתכונים.
גרסה 1.0.0-rc01
5 בנובמבר 2025
androidx.navigation3:navigation3-*:1.0.0-rc01 מופץ. גרסה 1.0.0-rc01 מכילה את השמירות האלה.
תיקוני באגים
-
NavDisplayמגדיר עכשיוLocalLifecycleOwnerברמהSceneשמאפשרת לכותבי סצנות לקבוע אם כל המעברים הסתיימו על ידי בדיקה שהערך שלLifecycle.StateהואRESUMED. ההתנהגות שלLocalLifecycleOwnerברמהNavEntryלא משתנה: היא גם נשארת מוגבלת ל-STARTEDאם מתבצע מעבר, והיא מוגבלת בנוסף ל-CREATEDאםNavEntryהוצא ממקבץ הפעילויות הקודמות (back stack) והוא בתהליך של אנימציה. (I03113, b/454045829)
גרסה 1.0.0-beta01
22 באוקטובר 2025
androidx.navigation3:navigation3-*:1.0.0-beta01 מופץ. גרסה 1.0.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
-
SceneStrategyScopeכולל עכשיו רק בנאי ציבורי ללא ארגומנטים, שמתאים לבדיקה שלSceneStrategyושלSceneשמוחזר בבידוד. לתרחישי שימוש מורכבים יותר, מומלץ להשתמש ב-rememberSceneState(). (I8440c, b/451679047)
תיקוני באגים
- תוקנה לולאה אינסופית כשמשלבים
SceneStrategyעםthen. (Iba3f0, b/450323470) - תוקן מצב של הבהוב המסך כשמחליפים את
backStackשמועבר אלNavDisplayומשתמשים באנימציות. (Ief7b5, b/450967248)
גרסה 1.0.0-alpha11
8 באוקטובר 2025
androidx.navigation3:navigation3-*:1.0.0-alpha11 מופץ. גרסה 1.0.0-alpha11 מכילה את השמירות האלה.
שינויים ב-API
- השיטה
calculateSceneב-SceneStrategyכבר לא@Composable. במקום זאת, כדאי להעביר את העבודה הזו לבנייה של שיטתSceneStrategy(כלומר, בשיטתrememberMySceneStrategy()) שמאפשרת לכם להגדיר באופן מלא את משך החיים של ערכיrememberSaveableאו של הצהרות מפתחrememberעל סמך הערכים הנכונים. (If1733, b/448709506) - הפרמטר
onBackשלSceneStrategy.calculateSceneהועבר להיקף החדש של מקבל הנתוניםSceneStrategyScopeכדי להבהיר שמדובר בפרמטר אופציונלי, וכדי לספק נקודת הרחבה לתכונות עתידיות של Navigation3. (I3aea3, b/448460407) - פונקציית ה-lambda
onBackשמועברת אלNavDisplayואלSceneStrategyלא מספקת יותר פרמטרcount: Intכדי לציין מתי צריך להסיר כמה רשומות. במקום זאת, פונקציית ה-() -> Unitlambda תיקרא עכשיו כמה פעמים ברצף במקרה הנדיר שבו בקשות ה-Scene שלכם יציגו כמה רשומות. (Idedb5, b/446989346) - מסירים את המחלקה
NavEntryWrapperומחליפים את הפונקציונליות שלה במחלקה סופיתNavEntryעם בנאי משני חדש שמקבלNavEntryעם תוכן חדש. כך נוכל להמשיך לתמוך בהוספת תוכן חדש לערך. (I7da2a, b/444447130) - הפונקציה
navEntryDecoratorשיוצרת ומחזירהNavEntryDecoratorהוסרה והוחלפה במחלקהNavEntryDecorator, שעכשיו היא ציבורית ופתוחה ליצירת מחלקות משנה. (If81f8, b/444447434, b/447381176) - השם של
SavedStateNavEntryDecoratorשונה ל-SaveableStateHolderNavEntryDecoratorכי הוא מוסיףSaveableStateHolderלרשומות. בנוסף, בוצע רפקטורינג של הדקורטור מפונקציה למחלקה, כי מבחינה פונקציונלית הוא מפעל שלNavEntryDecorator. (Ie6013, b/447381176) - כבר לא צריך להשתמש ב-
LocalEntriesToRenderInCurrentScenecomposition local כדי להציג תצוגות מותאמות אישית באמצעותSceneStateכחלופה לשימוש ב-NavDisplay. עכשיו היא פנימית. (Ic40ef, b/414668196) - הסרנו את
SceneSetupNavEntryDecoratorואתrememberSceneSetupNavEntryDecorator()מ-API שגלוי לכולם. הפונקציונליות הזו כלולה עכשיו כברירת מחדל, ולא צריך להוסיף אותה באופן ידני. (Ieae42, b/444479133) -
NavEntry,DialogScene,SinglePaneSceneוגםSceneStateמיישמים עכשיו את הפונקציה equals. (I96121) - בממשק של הסצנה יש שדה חדש של מטא-נתונים לצירוף מטא-נתונים ספציפיים לסצנה עבור NavDisplay. כך אפשר להגדיר שסצנה מסוימת תבטל את המטא-נתונים של
NavDisplay, למשל באמצעות מעברים. (I1fd96, b/443955625) - כדי לפשט את החתימה
rememberNavBackStack, מסירים את פרמטר הסוג הגנרי המיותר. הפונקציה מקבלת עכשיו את הערךvararg elements: NavKey. (I03e45) - אנימציות ברירת המחדל של
NavDisplayהן עכשיו חלק מה-API המשותף, כך שאפשר להפעיל אותן מכל הפלטפורמות. (I71af9, b/447147159) - משנים את השם של
EntryProviderBuilderל-EntryProviderScopeכדי לשקף בצורה מדויקת שהמחלקות הן Kotlin DSL שמספקות היקף לבנייתNavEntries. (Ia7465)
תיקוני באגים
rememberNavBackStack()אוכף עכשיו סריאליזציה פולימורפית עבור NavKey ודורשSavedStateConfigurationמותאם אישית שמוגדר כדי להבטיח שחזור נכון של המצב. עדכנו את KDoc כדי לשקף את הדרישה שכל סוגי המשנה של NavKey צריכים להיות רשומים ב-SerializersModule שסופק. (I6de37,I782f2, b/446664383)
גרסה 1.0.0-alpha10
24 בספטמבר 2025
androidx.navigation3:navigation3-*:1.0.0-alpha10 מופץ. גרסה 1.0.0-alpha10 מכילה את השמירות האלה.
שינויים ב-API
- הוספת עומס יתר חדש של
NavDisplayשמקבל רשימה שלNavEntry<T>שעברה קישוט על ידיrememberDecoratedNavEntries. (I4025b, b/441940314) - העברנו את
DialogSceneלחבילה חדשה. (Ia5840) - הסרת ה-API הציבורי
DecorateNavEntry. במקום זאת, משתמשים ב-rememberDecoratedNavEntriesכדי להוסיף רשימה של מעצבים ל-NavEntry. (Id8c09) - ממשק המשתמש Navigation3 מספק עכשיו מאפייני ברירת מחדל חדשים של
transitionSpec. (Ibcabd) - הוספנו אובייקט
SceneStateחדש שיעזור לכם לנהל סצנות. הפעולה הזו מספקת גם עומס יתר חדש שלNavDisplayשמקבל אתSceneStateואתNavigationEventState. (Idfb46, b/444479133) NavDisplayמאפשרת עכשיו להתאים אישית את המעברים על סמך המיקוםSceneשאליו עוברים והמיקום שממנו יוצאים, על ידי עיון בTransition,currentStateובtargetState. (I906cc, b/443872322)- המינוי של
NavigationEventInfoהוא עכשיוabstract classבמקוםinterface. מעדכנים את כל ההטמעות בהתאמה אישית כך שיורשות מהמחלקה (לדוגמה,data class MyInfo : NavigationEventInfo()). (I1e59c, b/444734264) - ממשקי ה-API של
navigationevent-composehandler עודכנו. NavigationEventHandlerו-NavigationBackHandler(והווריאציות שלהם) תומכים עכשיו בעומס יתר חדש שמקבלNavigationEventStates שהועברו. העומסים הפשוטים (שמקבליםcurrentInfo) נשמרים ועכשיו משתמשים במודל המצב החדש הזה באופן פנימי. (Ic3251, b/444734264) - כל ממשקי ה-API של Scene הועברו מ-navigation3-ui אל navigation3-runtime. כלומר, הם זמינים עכשיו בכל הפלטפורמות שנתמכות על ידי navigation3-runtime. (I431d0, b/444449993)
- נוספה
rememberDecoratedNavEntriesחדשה של עומס יתר שמקבלת רשימה שלNavEntryלהוסיף. אפשר להוסיף לערכי הקלט קישוטי ערכים אחרים. (I5a034, b/444230270) - הסרת פרמטרים של סוג wildcard של navigation3 (I02540)
- שיפרנו את הטיפול בגנריות ב-
entryProviderDSL. אם בעבר ייבאתם אתandroidx.navigation3.runtime.entry, אין יותר צורך בכך. (I299fc) - הגבלת העומס העודף של
NavBackStackSerializerשמבוסס על השתקפות ל-Android. ההגדרה הזו מונעת כשלים מרומזים בסריאליזציה בזמן ריצה בפלטפורמות שאינן Android, על ידי אכיפת השימוש בעומס היתר המפורשSavedStateConfigurationבקוד מולטי-פלטפורמה. (I73313, b/420443609) - הפיכת
swipeEdgeשלNavigationEventל-@IntDef(Icee54, b/443950342) - הגבלת סריאליזציה של
NavBackStackל-Android. כך נמנעים כשלים בזמן ריצה בפלטפורמות שאינן Android. כדי לשמור את המצב בכמה פלטפורמות, משתמשים ב-rememberNavBackStackoverload עםSavedStateConfigurationמפורש. (I1e418, b/420443609)
תיקוני באגים
- תיקון קריסה במהלך ניווט חזוי אחורה כש-
NavDisplayמקונן מכיל רשומה אחת של צאצא. (I2cdc0, b/441933162)
גרסה 1.0.0-alpha09
10 בספטמבר 2025
androidx.navigation3:navigation3-*:1.0.0-alpha09 מופץ. גרסה 1.0.0-alpha09 מכילה את השמירות האלה.
שינויים ב-API
- הפונקציה
DecoratedNavEntryProviderהוחלפה בפונקציהrememberDecoratedNavEntriesשיוצרת ומחזירה NavEntry עם רשימה של מעצבים שסופקו (I0fe1c, b/441328236) -
NavBackStackהוא עכשיו גנרי לגבי הסוגNavKey. כך אפליקציות וספריות יכולות להגדיר סוגי מקשים מותאמים אישית עבור ערימות החזרה שלהן, במקום להיות מוגבלות ל-NavKey. (I4d190,Iad2f4, b/420443609) -
NavBackStackהוא עכשיו@kotlinx.serialization.Serializable, ולכן אפשר לשמור ולשחזר את מצב הניווט אחרי סיום התהליך ושינויים בהגדרות בלי להשתמש בקוד מיותר. (I2c3cf, b/420443609) -
RememberNavBackStackהועבר אלcommonMainכדי לוודא שהוא מסופק בכל פלטפורמות היעד. (Id69e7, b/420443609)
תיקוני באגים
-
NavDisplayמעביר עכשיו כלNavEntryבנפרד אלLifecycle.Stateהנכון. (I30aac, b/440145700) - תוקנה בעיה שבה התג
NavDisplayהתעלם מכל תגNavigationEventDispatcherOwnerשמוגדר בתוך תג אחר באמצעותLocalNavigationEventDispatcherOwnerשל הספרייהNavigationEvent. (I6224a)
שינויים בתלות
- Navigation3 תלוי עכשיו ב-NavigationEvent Alpha08.
גרסה 1.0.0-alpha08
27 באוגוסט 2025
androidx.navigation3:navigation3-*:1.0.0-alpha08 מופץ. גרסה 1.0.0-alpha08 מכילה את השמירות האלה.
תכונות חדשות
- נוספו יעדים חדשים של Kotlin MultiPlatform (KMP) לארטיפקטים של
Navigation3 Runtime. Navigation3 Runtimeתומך עכשיו בפלטפורמות הבאות: JVM (Android ומחשב), Native (Linux, iOS, watchOS, macOS, MinGW) ו-Web (JavaScript, WasmJS). (I55078, b/424410398, b/419294028, b/419046226). הערה: הפקודה הזו לא מספקת יעדי KMP עבורNavigation3 UIartifact. בפלטפורמות אחרות, תצטרכו להטמיעNavDisplayמשלכם בהתאמה אישית. אם אתם רוצים שהתמיכה תתווסף, אתם יכולים להצביע על הבעיה ב-Jetbrains כאן ולעקוב אחרי ההתקדמות כדי לקבל תמיכה נוספת. - אובייקט
NavDisplayInfoעכשיו ציבורי ואפשר להשתמש בו כדי לאחזר את רשימת הרשומות הגלויות מ-NavDisplay. (Ibc91f)
שינויים ב-API
- נוסף
NavBackStackSerializerחדש לשימוש בשילוב עםrememberNavBackStackכדי לבצע שחזור של מצב. התגrememberNavBackStack()מקבל עכשיו גם את הערךSavedStateConfigurationשאפשר להשתמש בו כדי לספק הגדרה משלכם. (I2f4d2, I4cd58, b/420443609)
תיקוני באגים
- תוקנה בעיה שבה ניווט גרם להפעלת אירועים שגויים של מחזור החיים. (I8bf6d, b/425901162, b/434109022)
בעיות מוכרות
- באג שנוצר על ידי I8bf6d גרם לכך שמחזורי החיים התבססו על סצנות במקום על רשומות נפרדות. כתוצאה מכך, מחזור החיים לא פעל במקרים שבהם
keyשסופק ל-NavEntryלא היהString, או ש-NavEntryלא ביטל אתcontentKeyוהגדיר אותו כשווה ל-key(שימו לב שפעולה כזו מחייבת שהמפתח יישמר ב-Bundle). הבאג הזה תוקן בגרסה הבאה. (b/440145700)
גרסה 1.0.0-alpha07
13 באוגוסט 2025
androidx.navigation3:navigation3-*:1.0.0-alpha07 מופץ. גרסה 1.0.0-alpha07 מכילה את השמירות האלה.
עדכון MinSdk
- הערך minSdk שמוגדר כברירת מחדל ב-AndroidX הועבר מ-API 21 ל-API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
שינויים ב-API
-
SavedStateNavEntryDecoratorמשתמש עכשיו ב-SaveableStateRegistryשמוטמע ב-SaveableStateProviderכדי לשמור ולשחזר מצבים. (If8d9a) - הפרמטר
predictivePopTransitionSpecמועבר עכשיו כפרמטר של קצה ההחלקה, וכך אפשר להתאים אישית את המעבר בהתאם לקצה שממנו המשתמש התחיל את חיזוי תנועת החזרה. (I753a8)
תיקוני באגים
- תוקנה בעיה שגרמה לחישוב אינסופי של סצנות בהתאמה אישית, כי המערכת לא זכרה את הסצנה האחרונה. (I7ba84, b/418153031)
עדכון תלות
- Navigation3 מסתמך עכשיו על Navigation Event
1.0.0-alpha06.
גרסה 1.0.0-alpha06
30 ביולי 2025
androidx.navigation3:navigation3-*:1.0.0-alpha06 מופץ. גרסה 1.0.0-alpha06 מכילה את השמירות האלה.
עדכון תלות
- Navigation3 מסתמך עכשיו על Navigation Event
1.0.0-alpha05.
גרסה 1.0.0-alpha05
2 ביולי 2025
androidx.navigation3:navigation3-*:1.0.0-alpha05 מופץ. גרסה 1.0.0-alpha05 מכילה את השמירות האלה.
שינויים בהתנהגות
- הסטטוס של
NavEntryמבוסס עכשיו באופן בלעדי על הרשימה הנוכחית של מעצבים שמועברים אלNavDisplay. המשמעות היא שאם יש כמה מקבצי פעילויות קודמות (back stack), צריך להחליף את ה-decorators לאורך מקבצי פעילויות קודמות (back stack) כדי לשמור על המצב של NavEntry במקבץ פעילויות קודמות (back stack). אחרת, המצבים ינוקו כאילו הרשומות הוצאו מהמחסנית (במקום החלפה). (I7a759, b/428033667)
גרסה 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 תלוי עכשיו בארטיפקט
androidx.navigationevent.composeהחדש.
גרסה 1.0.0-alpha03
4 ביוני 2025
androidx.navigation3:navigation3-*:1.0.0-alpha03 מופץ. גרסה 1.0.0-alpha03 מכילה את השמירות האלה.
תיקוני באגים
-
Navigation3כבר לא ינקה את מצבי הקישוט שלbackStacksשהוחלפו והוחלפו במופע אחר של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 פיתוח נייטיב. ארטיפקט androidx.navigation3.runtime מספק את אבני הבניין, וארטיפקט androidx.navigation3.ui מספק את שכבת ממשק המשתמש באמצעות NavDisplay API. המפתחים יכולים לספק את המצב שלהם ישירות לפונקציה הניתנת להרכבה 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.