navigationevent

  
ספריית Navigation Event מספקת API שמתמקד ב-KMP לטיפול בחזרה למערכת וגם בחיזוי של תנועת החזרה.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫2 ביולי 2025 - - - 1.0.0-alpha04

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

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

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

Groovy

dependencies {
    implementation "androidx.navigationevent:navigationevent:1.0.0-alpha04"
}

Kotlin

dependencies {
    implementation("androidx.navigationevent:navigationevent:1.0.0-alpha04")
}

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

משוב

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

יצירת בעיה חדשה

מידע נוסף זמין במאמרי העזרה בנושא כלי המעקב אחר בעיות.

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

גירסה 1.0

גרסה 1.0.0-alpha04

‫2 ביולי 2025

androidx.navigationevent:navigationevent-*:1.0.0-alpha04 משוחרר. גרסה 1.0.0-alpha04 מכילה את הקומטים האלה.

תיקוני באגים

  • השתמשתי ב-implementedInJetBrainsFork כדי navigationevent-compose והוספתי יעד commonStubs בהתאם למוסכמות של Compose. בקשת שינוי מאת Ivan Matkov מ-JetBrains. (f60c79)
  • בוצע תיקון של היישום של התוסף של מהדר Compose ל-Kotlin/Native כדי להבטיח יצירה נכונה של קובצי stub. אין השפעה על ממשקי API ציבוריים או על אופן הפעולה שלהם. (1890c9)

גרסה 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 יצירה מקומית חדשה. היא מחזירה ערך שניתן להגדרה כ-null כדי לקבוע טוב יותר אם היא זמינה בהרכב הנוכחי. מעכשיו, אם הבעלים הבסיסי לא יימצא, תופיע שגיאה ב-NavigationEventHandler. (62ffda)
  • NavigationEvent נוסף NavigationEventHandler Composable חדש ל-Compose כדי לטפל באירועים (תנועת חזרה עם חיזוי). היא מספקת 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

  • מחליפים את בנאי המשנה של 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, והיא נועדה להיות תחליף פחות דעתני לשימוש בממשקי ה-API של Activity ברכיבים ברמה גבוהה יותר או לשימוש ישיר בממשקי ה-API של Android framework OnBackInvokedDispatcher. ממשקי ה-API של androidx.activity נכתבו מחדש על בסיס ממשקי ה-API של אירועי הניווט כחלק מ-Activity 1.12.0-alpha01.