navigationevent

  
탐색 이벤트 라이브러리는 시스템 뒤로 탐색과 뒤로 탐색 예측을 처리하기 위한 KMP 우선 API를 제공합니다.
최근 업데이트 안정화 버전 출시 후보 버전 베타 버전 알파 버전
2025년 6월 18일 - - - 1.0.0-alpha03

종속 항목 선언

navigationevent의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

Groovy

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

Kotlin

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

종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.

의견

제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.

새로운 문제 제출하기

자세한 내용은 Issue Tracker 문서를 참고하세요.

이 아티팩트의 출시 노트는 없습니다.

버전 1.0

버전 1.0.0-alpha03

2025년 6월 18일

androidx.navigationevent:navigationevent-*:1.0.0-alpha03이 출시되었습니다. 버전 1.0.0-alpha03에는 이 커밋이 포함되어 있습니다.

새로운 기능

  • navigationevent 라이브러리에서 Jetpack Compose 기능을 지원하는 새로운 navigationevent-compose 모듈을 도입했습니다. (980d78)
  • NavigationEvent Compose에 새 LocalNavigationEventDispatcherOwner 로컬 컴포지션이 추가되었습니다. 현재 컴포지션에서 사용할 수 있는지 더 효과적으로 판단할 수 있도록 null을 허용하는 값을 반환합니다. 이제 NavigationEventHandler는 기본 소유자를 찾을 수 없는 경우 오류를 발생시킵니다. (62ffda)
  • NavigationEvent Compose에 (뒤로 탐색 예측 동작) 이벤트를 처리하는 새로운 NavigationEventHandler 컴포저블이 추가되었습니다. 제공하는 정지 람다 c42ba6에서 수집해야 하는 NavigationEvent 객체의 Flow를 제공합니다.
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)
  • NavigationEvent의 전달을 중단할 수 있는 탐색 중 변이를 방지하기 위해 isPassThroughval로 만들었습니다. (I0b287)

버전 1.0.0-alpha02

2025년 6월 4일

androidx.navigationevent:navigationevent-*:1.0.0-alpha02이 출시되었습니다. 버전 1.0.0-alpha02에는 이 커밋이 포함되어 있습니다.

API 변경사항

  • NavigationEventDispatcher의 보조 생성자를 기본 인수로 바꿉니다. (I716a0)
  • NavigationEventCallback에서 우선순위 속성을 삭제합니다. 대신 우선순위를 NavigationEventDispatcher.addCallback()에 전달합니다. (I13cae)

버그 수정

  • 닫을 수 있는 항목의 내부 목록을 동시에 수정하여 NavigationEventCallback.remove()가 호출될 때 발생할 수 있는 ConcurrentModificationException를 수정했습니다. (b/420919815)

버전 1.0.0-alpha01

2025년 5월 20일

androidx.navigationevent:navigationevent-*:1.0.0-alpha01이 출시되었습니다. 버전 1.0.0-alpha01에는 이 커밋이 포함되어 있습니다.

새로운 기능

  • androidx.navigationevent 라이브러리는 시스템 뒤로 탐색과 뒤로 탐색 예측을 처리하기 위한 KMP 우선 API를 제공합니다. NavigationEventDispatcher는 시스템 뒤로 이벤트를 수신하기 위해 하나 이상의 NavigationEventCallback 인스턴스를 등록하는 공통 API 역할을 합니다.
  • 이 레이어는 이전에 androidx.activity에서 출시된 API 아래에 있으며, 상위 수준 구성요소에서 Activity API를 사용하거나 Android 프레임워크 OnBackInvokedDispatcher API를 직접 사용하는 것보다 덜 독단적인 대체 API를 제공하는 것을 목표로 합니다. androidx.activity API는 Activity 1.12.0-alpha01의 일부로 Navigation Event API를 기반으로 다시 작성되었습니다.