навигационноесобытие

Библиотека событий навигации предоставляет API-интерфейс KMP для обработки системных возвратов, а также предиктивных возвратов .
Последнее обновление Стабильный релиз Кандидат на релиз Бета-релиз Альфа-релиз
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 в компонентах более высокого уровня или непосредственного использования API OnBackInvokedDispatcher фреймворка Android. API androidx.activity были переписаны поверх API Navigation Event в рамках Activity 1.12.0-alpha01 .