навигационноесобытие
Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-релиз | Альфа-релиз |
---|---|---|---|---|
18 июня 2025 г. | - | - | - | 1.0.0-альфа03 |
Объявление зависимостей
Чтобы добавить зависимость от navigationevent, необходимо добавить репозиторий Google Maven в свой проект. Прочтите репозиторий Google Maven для получения дополнительной информации.
Добавьте зависимости для необходимых артефактов в файл build.gradle
для вашего приложения или модуля:
Круто
dependencies { implementation "androidx.navigationevent:navigationevent:1.0.0-alpha03" }
Котлин
dependencies { implementation("androidx.navigationevent:navigationevent:1.0.0-alpha03") }
Дополнительную информацию о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают сделать Jetpack лучше. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.
Более подробную информацию смотрите в документации Issue Tracker .
Для этого артефакта нет примечаний к выпуску.
Версия 1.0
Версия 1.0.0-альфа03
18 июня 2025 г.
Выпущен androidx.navigationevent:navigationevent-*:1.0.0-alpha03
. Версия 1.0.0-alpha03 содержит эти коммиты .
Новые возможности
- Представлен новый модуль
navigationevent-compose
для поддержки функций Jetpack Compose в библиотекеnavigationevent
. ( 980d78 ) -
NavigationEvent
Compose добавил новую локальную композициюLocalNavigationEventDispatcherOwner
. Она возвращает значение, допускающее значение null, чтобы лучше определить, доступна ли она в текущей композиции.NavigationEventHandler
теперь выдаст ошибку, если базовый владелец не найден. ( 62ffda ) -
NavigationEvent
Compose добавил новыйNavigationEventHandler
Composable для обработки событий (предиктивный жест назад). Он предоставляетFlow
объектовNavigationEvent
, которые должны быть собраны в лямбде-функции приостановки, которую вы предоставляете 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
за раз; добавление его к нескольким диспетчерам вызываетIllegalStateException
. Обратите внимание, что это поведение отличается отOnBackPressedDispatcher
, который допускает несколько диспетчеров. ( e82c19 ) - Сделал
isPassThrough
значениемval
для предотвращения мутации во время навигации, что могло бы нарушить диспетчеризациюNavigationEvent
. ( I0b287 )
Версия 1.0.0-альфа02
4 июня 2025 г.
Выпущен androidx.navigationevent:navigationevent-*:1.0.0-alpha02
. Версия 1.0.0-alpha02 содержит эти коммиты .
Изменения API
- Замените вторичный конструктор
NavigationEventDispatcher
аргументами по умолчанию. ( I716a0 ) - Удалить свойство priority из
NavigationEventCallback
. Вместо этого передать priority вNavigationEventDispatcher.addCallback()
. ( I13cae )
Исправление ошибок
- Исправлена ошибка
ConcurrentModificationException
, которая могла возникнуть при вызовеNavigationEventCallback.remove()
из-за одновременного изменения внутреннего списка закрываемых объектов. ( b/420919815 )
Версия 1.0.0-альфа01
20 мая 2025 г.
Выпущен androidx.navigationevent:navigationevent-*:1.0.0-alpha01
. Версия 1.0.0-alpha01 содержит эти коммиты .
Новые возможности
- Библиотека
androidx.navigationevent
предоставляет API KMP-first для обработки системных обратных вызовов, а также Predictive Back .NavigationEventDispatcher
служит в качестве общего API для регистрации одного или нескольких экземпляровNavigationEventCallback
для получения событий системных обратных вызовов. - Этот уровень находится ниже ранее выпущенных API в
androidx.activity
и призван стать менее категоричной заменой для использования API Activity в компонентах более высокого уровня или непосредственного использования APIOnBackInvokedDispatcher
фреймворка Android. APIandroidx.activity
были переписаны поверх API Navigation Event в рамках Activity 1.12.0-alpha01 .