navigationevent
העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסה אלפא |
---|---|---|---|---|
18 ביוני 2025 | - | - | - | 1.0.0-alpha03 |
הצהרת יחסי תלות
כדי להוסיף תלות ב-navigationevent, צריך להוסיף את מאגר Google Maven לפרויקט. למידע נוסף, אפשר לקרוא את המאמר מאגר Maven של Google.
מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle
של האפליקציה או המודול:
Groovy
dependencies { implementation "androidx.navigationevent:navigationevent:1.0.0-alpha03" }
Kotlin
dependencies { implementation("androidx.navigationevent:navigationevent:1.0.0-alpha03") }
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במסמכי התיעוד של Issue Tracker.
אין הערות לגבי הגרסה של הארטיפקט הזה.
גירסה 1.0
גרסה 1.0.0-alpha03
18 ביוני 2025
androidx.navigationevent:navigationevent-*:1.0.0-alpha03
משוחרר. הגרסה 1.0.0-alpha03 כוללת את ההוספות האלה.
תכונות חדשות
- הוספנו מודול
navigationevent-compose
חדש לתמיכה בתכונות של Jetpack Compose בספרייהnavigationevent
. (980d78) NavigationEvent
נוספה קומפוזיציה מקומית חדשה מסוגLocalNavigationEventDispatcherOwner
ל-Compose. הפונקציה מחזירה ערך nullable כדי לקבוע טוב יותר אם הוא זמין בהרכב הנוכחי. הפונקציהNavigationEventHandler
תגרום להצגת שגיאה אם הבעלים הבסיסי לא נמצא. (62ffda)NavigationEvent
נוספה ל-Compose רכיב Composable חדש מסוגNavigationEventHandler
לטיפול באירועים (תנועת חזרה חזויה). הוא מספקFlow
של אובייקטים מסוגNavigationEvent
שצריך לאסוף ב-lambda להשהיה שסיפקתם, c42ba6:
NavigationEventHandler { progress: Flow<NavigationEvent> ->
// This block is executed when the back gesture begins.
try {
progress.collect { backEvent ->
// Handle gesture progress updates here.
}
// This block is executed if the gesture completes successfully.
} catch (e: CancellationException) {
// This block is executed if the gesture is cancelled
throw e
} finally {
// This block is executed either the gesture is completed or cancelled
}
}
שינויים ב-API
- עכשיו אפשר לרשום כל
NavigationEventCallback
רק ל-NavigationEventDispatcher
אחד בכל פעם. הוספה שלNavigationEventCallback
למספר בוררים תגרום להודעת השגיאהIllegalStateException
. חשוב לדעת שההתנהגות הזו שונה מ-OnBackPressedDispatcher
, שמאפשרת מספר מפיצים. (e82c19) - הפכנו את
isPassThrough
ל-val
כדי למנוע מוטציה במהלך הניווט, שעלולה לשבש את שליחת הבקשות שלNavigationEvent
. (I0b287)
גרסה 1.0.0-alpha02
4 ביוני 2025
androidx.navigationevent:navigationevent-*:1.0.0-alpha02
משוחרר. הגרסה 1.0.0-alpha02 כוללת את ההוספות האלה.
שינויים ב-API
- מחליפים את ה-constructor המשני של
NavigationEventDispatcher
בארגומנטים שמוגדרים כברירת מחדל. (I716a0) - מסירים את מאפיין העדיפות מ-
NavigationEventCallback
. במקום זאת, מעבירים את העדיפות אלNavigationEventDispatcher.addCallback()
. (I13cae)
תיקוני באגים
- תוקנה שגיאת
ConcurrentModificationException
שעלולה הייתה להתרחש כשהתרחשה קריאה ל-NavigationEventCallback.remove()
בגלל שינוי בו-זמנית של הרשימה הפנימית של הפריטים שאפשר לסגור. (b/420919815)
גרסה 1.0.0-alpha01
20 במאי 2025
androidx.navigationevent:navigationevent-*:1.0.0-alpha01
משוחרר. גרסת 1.0.0-alpha01 כוללת את ההוספות האלה.
תכונות חדשות
- הספרייה
androidx.navigationevent
מספקת ממשק API שמבוסס על KMP לטיפול בחזרה למערכת, וגם בחזרה חזותית.NavigationEventDispatcher
משמש כממשקי API נפוצים לרישום מופעNavigationEventCallback
אחד או יותר לקבלת אירועי חזרה למערכת. - השכבה הזו נמצאת מתחת לממשקי ה-API שפורסמו בעבר ב-
androidx.activity
, והיא מיועדת להחליף את השימוש ב-Activity APIs ברכיבים ברמה גבוהה יותר או את השימוש ישירות בממשקי ה-API של Android frameworkOnBackInvokedDispatcher
. ממשקי ה-API שלandroidx.activity
נכתבו מחדש מעל ממשקי ה-API של אירועי הניווט כחלק מActivity 1.12.0-alpha01.