navigationevent
آخر تعديل | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأولي |
---|---|---|---|---|
18 حزيران (يونيو) 2025 | - | - | - | 1.0.0-alpha03 |
تحديد التبعيات
لإضافة تبعية على navigationevent، يجب إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف التبعيات للعناصر التي تحتاج إليها في ملف build.gradle
ل
تطبيقك أو وحدتك:
رائع
dependencies { implementation "androidx.navigationevent:navigationevent:1.0.0-alpha03" }
Kotlin
dependencies { implementation("androidx.navigationevent:navigationevent:1.0.0-alpha03") }
لمزيد من المعلومات عن العناصر الاعتمادية، اطّلِع على مقالة إضافة عناصر الاعتماد الخاصة بالإصدار.
الملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا واجهت مشاكل جديدة أو كان لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مكتبة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية عن طريق النقر على زر النجمة.
اطّلِع على مستندات أداة تتبُّع المشاكل لمزيد من المعلومات.
لا تتوفّر ملاحظات حول الإصدار لهذا العنصر.
الإصدار 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
تركيبة محلية جديدة. ويعرض قيمة يمكن أن تكون فارغة لتحديد ما إذا كان متاحًا في التركيبة الحالية بشكل أفضل. سيُظهرNavigationEventHandler
الآن خطأً في حال عدم العثور على المالك الأساسي. (62ffda)NavigationEvent
أضافت ميزة "الإنشاء"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
}
}
تغييرات واجهة برمجة التطبيقات
- يمكن الآن تسجيل كل
NavigationEventCallback
باستخدامNavigationEventDispatcher
واحد فقط في كل مرة، وسيتم عرض خطأIllegalStateException
عند إضافته إلى موزّعين متعدّدين. يختلف هذا السلوك عنOnBackPressedDispatcher
الذي يسمح بمستخدمي إرسال متعدّدين. (e82c19) - تمّ جعل
isPassThrough
val
لمنع حدوث تغييرات أثناء التنقّل، ما قد يؤدي إلى إيقاف إرسالNavigationEvent
. (I0b287)
الإصدار 1.0.0-alpha02
4 حزيران (يونيو) 2025
تم إصدار androidx.navigationevent:navigationevent-*:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- استبدِل المنشئ الثانوي
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
واجهة برمجة تطبيقات مخصّصة لنظام KMP من أجل معالجة "الرجوع إلى النظام" بالإضافة إلى الرجوع التوقّعي. تُستخدَمNavigationEventDispatcher
كواجهة برمجة تطبيقات شائعة لتسجيل مثيل واحد أو أكثر منNavigationEventCallback
لتلقّي أحداث استرداد النظام. - تقع هذه الطبقة أسفل واجهات برمجة التطبيقات التي تم إصدارها سابقًا في
androidx.activity
، وتهدف إلى أن تكون بديلاً أقل تحديدًا لاستخدام واجهات برمجة تطبيقات النشاط في المكوّنات ذات المستوى الأعلى أو استخدام واجهات برمجة تطبيقات إطار عمل AndroidOnBackInvokedDispatcher
مباشرةً. تمت إعادة كتابة واجهات برمجة تطبيقاتandroidx.activity
استنادًا إلى واجهات برمجة تطبيقات أحداث التنقّل كجزء من Activity 1.12.0-alpha01.