navigationevent

  
A biblioteca Navigation Event oferece uma API de KMP para processar a volta ao sistema e a volta preditiva.
Atualização mais recente Versão estável Versão candidata a lançamento Versão Beta Versão Alfa
18 de junho de 2025 - - - 1.0.0-alpha03

Declarar dependências

Para adicionar uma dependência ao navigationevent, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.

Adicione as dependências dos artefatos necessários ao arquivo build.gradle do seu app ou módulo:

Groovy

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

Kotlin

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

Para mais informações sobre dependências, consulte Adicionar dependências de build.

Feedback

Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.

Criar novo problema

Consulte a documentação do Issue Tracker para saber mais.

Não há notas de versão para este artefato.

Versão 1.0

Versão 1.0.0-alpha03

18 de junho de 2025

Lançamento de androidx.navigationevent:navigationevent-*:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.

Novos recursos

  • Um novo módulo navigationevent-compose foi introduzido para oferecer suporte aos recursos do Jetpack Compose na biblioteca navigationevent. (980d78).
  • O NavigationEvent Compose adicionou uma nova composição local LocalNavigationEventDispatcherOwner. Ele retorna um valor anulável para determinar melhor se ele está disponível na composição atual. NavigationEventHandler agora vai gerar um erro se o proprietário não for encontrado. (62ffda).
  • O NavigationEvent Compose adicionou um novo elemento combinável NavigationEventHandler para processar eventos (gesto de volta preditivo). Ele fornece uma Flow de objetos NavigationEvent que precisam ser coletados na lambda de suspensão que você fornece 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
  }
}

Mudanças na API

  • Agora, cada NavigationEventCallback pode ser registrado com apenas um NavigationEventDispatcher por vez. Adicionar o NavigationEventCallback a vários despachantes gera uma IllegalStateException. Esse comportamento é diferente de OnBackPressedDispatcher, que permite vários agentes. (e82c19).
  • isPassThrough foi transformado em val para evitar mutações durante a navegação, o que poderia interromper o envio de NavigationEvent. (I0b287).

Versão 1.0.0-alpha02

4 de junho de 2025

Lançamento de androidx.navigationevent:navigationevent-*:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estas confirmações.

Mudanças na API

  • Substitua o construtor secundário de NavigationEventDispatcher por argumentos padrão. (I716a0).
  • A propriedade de prioridade foi removida de NavigationEventCallback. Transmita a prioridade para NavigationEventDispatcher.addCallback(). (I13cae).

Correções de bugs

  • Correção de um ConcurrentModificationException que podia ocorrer quando NavigationEventCallback.remove() era chamado devido à modificação simultânea da lista interna de itens fecháveis. (b/420919815).

Versão 1.0.0-alpha01

20 de maio de 2025

Lançamento de androidx.navigationevent:navigationevent-*:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.

Novos recursos

  • A biblioteca androidx.navigationevent fornece uma API de KMP para processar a volta ao sistema e a volta preditiva. O NavigationEventDispatcher funciona como uma API comum para registrar uma ou mais instâncias de NavigationEventCallback para receber eventos de retorno do sistema.
  • Essa camada fica abaixo das APIs lançadas anteriormente no androidx.activity e tem como objetivo ser uma substituição menos opinativa para o uso das APIs de atividade em componentes de nível mais alto ou diretamente das APIs OnBackInvokedDispatcher do framework do Android. As APIs androidx.activity foram reescritas sobre as APIs de evento de navegação como parte da Activity 1.12.0-alpha01.