Atividade
| Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
|---|---|---|---|---|
| 22 de outubro de 2025 | 1.11.0 | - | 1.12.0-beta01 | - |
Declarar dependências
Para adicionar uma dependência de atividade, adicione o repositório Maven do Google ao 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 { def activity_version = "1.11.0" // Java language implementation implementation "androidx.activity:activity:$activity_version" // Kotlin implementation "androidx.activity:activity-ktx:$activity_version" }
Kotlin
dependencies { val activity_version = "1.11.0" // Java language implementation implementation("androidx.activity:activity:$activity_version") // Kotlin implementation("androidx.activity:activity-ktx:$activity_version") }
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.
Consulte a documentação do Issue Tracker para saber mais.
Versão 1.12
Versão 1.12.0-beta01
22 de outubro de 2025
Lançamento de androidx.activity:activity:1.12.0-beta01, androidx.activity:activity-compose:1.12.0-beta01 e androidx.activity:activity-ktx:1.12.0-beta01. A versão 1.12.0-beta01 contém estes commits.
Mudanças na API
- Apresentamos a API experimental
ActivityFlagspara gerenciar mudanças e migrações de comportamento de tempo de execução. A primeira flag ativa a ordenação estável paraOnBackPressedCallback, tornando a navegação de volta mais previsível em mudanças no ciclo de vida. Os desenvolvedores podem desativar essa opção definindoActivityFlags.isOnBackPressedLifecycleOrderMaintained = false. (I06bdf, Id08bb, I439aa, b/422730945, b/450533622)
Atualização de dependências
- Atualização das dependências do ciclo de vida para 2.9.4 (Ic9fb2).
Versão 1.12.0-alpha09
24 de setembro de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha09, androidx.activity:activity-compose:1.12.0-alpha09 e androidx.activity:activity-ktx:1.12.0-alpha09. A versão 1.12.0-alpha09 contém estes commits.
Mudanças na dependência
- A atividade agora depende do Navigation Event 1.0.0-alpha08.
Versão 1.12.0-alpha08
10 de setembro de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha08, androidx.activity:activity-compose:1.12.0-alpha08 e androidx.activity:activity-ktx:1.12.0-alpha08. A versão 1.12.0-alpha08 contém estes commits.
Atualização de dependências
- A atividade agora depende do Navigation Event 1.0.0-alpha08.
Versão 1.12.0-alpha07
27 de agosto de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha07, androidx.activity:activity-compose:1.12.0-alpha07 e androidx.activity:activity-ktx:1.12.0-alpha07. A versão 1.12.0-alpha07 contém estes commits.
Correções de bugs
- Correção de um problema com
EdgeToEdgena API 35 em que visualizações invisíveis causavam encartes de medição inesperados. (If49ff)
Atualização de dependências
- A atividade agora depende do Navigation Event
1.0.0-alpha07.
Versão 1.12.0-alpha06
13 de agosto de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha06, androidx.activity:activity-compose:1.12.0-alpha06 e androidx.activity:activity-ktx:1.12.0-alpha06. A versão 1.12.0-alpha06 contém estes commits.
Atualização do MinSdk
- O
minSdkpadrão do AndroidX foi movido da API 21 para a API 23 (Ibdfca, b/380448311, b/435705964, b/435705223).
Atualizações da documentação
- Atualização dos KDocs para
PredictiveBackHandlerpara destacar um problema conhecido de tempo em que ele pode processar um gesto no mesmo frame em que é desativado. (I5be5c, b/431534103) - Atualizamos os KDocs para
BackHandlerePredictiveBackHandlerpara declarar explicitamente o comportamento "o último composto vence", além de recomendar a composição incondicional com a flagenabled. (I7ab94).
Atualização de dependências
- A atividade agora depende do Navigation Event
1.0.0-alpha06.
Versão 1.12.0-alpha05
30 de julho de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha05, androidx.activity:activity-compose:1.12.0-alpha05 e androidx.activity:activity-ktx:1.12.0-alpha05. A versão 1.12.0-alpha05 contém estes commits.
Atualização de dependências
- A atividade agora depende do Navigation Event
1.0.0-alpha05.
Versão 1.12.0-alpha04
2 de julho de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04 e androidx.activity:activity-ktx:1.12.0-alpha04. A versão 1.12.0-alpha04 contém estes commits.
Mudanças na dependência
- A atividade agora depende do NavigationEvent Alpha04
Versão 1.12.0-alpha03
18 de junho de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03 e androidx.activity:activity-ktx:1.12.0-alpha03. A versão 1.12.0-alpha03 contém estes commits.
Correções de bugs
OnBackPressedDispatchereNavigationEventDispatcheragora são inicializados de forma lenta emComponentActivity. (I710e6)Correção de problemas com
OnBackPressedDistpatcherque causavam o seguinte:- Apenas o último dispatcher e um
OnBackPressedCallbackforam adicionados para serem notificados sobre o estado ativado (b/418715930). OnBackPressedDispatcherremove o callback errado ao usar a funçãoaddCallbackque usa um ciclo de vida. (b/422714753)- O
OnBackPressedDispatcher.remove()não remove todas as instâncias de umOnBackPressedCallbackregistrado. (b/423024414)
- Apenas o último dispatcher e um
Versão 1.12.0-alpha02
4 de junho de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha02, androidx.activity:activity-compose:1.12.0-alpha02 e androidx.activity:activity-ktx:1.12.0-alpha02. A versão 1.12.0-alpha02 contém estes commits.
Correções de bugs
- De NavigationEvent
1.0.0-alpha02: foi corrigido umConcurrentModificationExceptionque podia ocorrer quandoNavigationEventCallback.remove()era chamado devido à modificação simultânea da lista interna de elementos fecháveis. (I63066).
Versão 1.12.0-alpha01
20 de maio de 2025
Lançamento de androidx.activity:activity:1.12.0-alpha01, androidx.activity:activity-compose:1.12.0-alpha01 e androidx.activity:activity-ktx:1.12.0-alpha01. A versão 1.12.0-alpha01 contém estes commits.
Novos recursos
ComponentActivityeComponentDialogforam integrados ao NavigationEvent1.0.0-alpha01pela APINavigationEventDispatcherOwner. Agora você pode extrair umNavigationEventDispatcherdo seuComponentActivityusando o camponavigationEventDispatcher. Como oOnBackPressedDispatcherfoi reescrito com base na nova biblioteca, todos os usos anteriores vão continuar funcionando corretamente. UseNavigationEventDispatchereNavigationEventCallbackdaqui para frente. (Ib8eed, I6cc44, Ib7724, I9a0f7,b/412597031, b/415028038, b/412596729, b/412597140, b/412596012)
Versão 1.11
Versão 1.11.0
10 de setembro de 2025
Lançamento de androidx.activity:activity:1.11.0, androidx.activity:activity-compose:1.11.0 e androidx.activity:activity-ktx:1.11.0. A versão 1.11.0 contém estes commits.
Mudanças importantes desde a versão 1.10.0:
- Adição da API
MediaCapabilitiesaPickVisualMediaRequestpara permitir que os aplicativos especifiquem os recursos de mídia, como tipos de HDR compatíveis. - A atividade agora é compilada com a API 36.
Versão 1.11.0-rc01
23 de abril de 2025
Lançamento de androidx.activity:activity:1.11.0-rc01, androidx.activity:activity-compose:1.11.0-rc01 e androidx.activity:activity-ktx:1.11.0-rc01. A versão 1.11.0-rc01 contém estes commits.
Versão 1.11.0-beta01
9 de abril de 2025
Lançamento de androidx.activity:activity:1.11.0-beta01, androidx.activity:activity-compose:1.11.0-beta01 e androidx.activity:activity-ktx:1.11.0-beta01. A versão 1.11.0-beta01 contém estes commits.
Versão 1.11.0-alpha02
26 de março de 2025
Lançamento de androidx.activity:activity:1.11.0-alpha02, androidx.activity:activity-compose:1.11.0-alpha02 e androidx.activity:activity-ktx:1.11.0-alpha02. A versão 1.11.0-alpha02 contém estes commits.
Mudanças na API
- As novas
EDGE_NONEeframeTimeMillisdo Android 16 Beta03 foram integradas aoBackEventCompatfornecido pelas funçõeshandleOnBackStartedehandleOnBackProgresseddoOnBackPressedCallback.
Atualizações de dependência
- A atividade agora é compilada com a API 36. (I510e8, b/301910674).
Versão 1.11.0-alpha01
12 de março de 2025
Lançamento de androidx.activity:activity:1.11.0-alpha01, androidx.activity:activity-compose:1.11.0-alpha01 e androidx.activity:activity-ktx:1.11.0-alpha01. A versão 1.11.0-alpha01 contém estes commits.
Novos recursos
- Adição da API
MediaCapabilitiesaoPickVisualMediaRequestpara permitir que os aplicativos especifiquem os recursos de mídia, como tipos de HDR compatíveis. (Ic3ee7).
Versão 1.10
Versão 1.10.1
26 de fevereiro de 2025
Lançamento de androidx.activity:activity:1.10.1, androidx.activity:activity-compose:1.10.1 e androidx.activity:activity-ktx:1.10.1. A versão 1.10.1 contém estes commits.
Correções de bugs
- Agora,
ViewTreeOnBackPressedDispatcherOwnerseFullyDrawnReporterOwnerspodem ser resolvidos por familiares responsáveis distintos de uma visualização, como umViewOverlay. Consulte as notas da versão do núcleo ou a documentação emViewTree.setViewTreeDisjointParentpara mais informações sobre pais de visualizações desconexas. (Ie7750)
Versão 1.10.0
15 de janeiro de 2025
Lançamento de androidx.activity:activity:1.10.0, androidx.activity:activity-compose:1.10.0 e androidx.activity:activity-ktx:1.10.0. A versão 1.10.0 contém estes commits.
Mudanças importantes desde a versão 1.9.0
- Agora, o
PhotoPickerpermite escolher imagens em ordem e selecionar qual guia (álbuns ou imagens) deve ficar visível inicialmente. - Os contratos de resultado da atividade
PickVisualMediaePickMultipleVisualMediaque acionam o seletor de fotos não delegam mais diretamente ao Google Play Services se o seletor de fotos do sistema não estiver disponível. Em vez disso, eles usam a ação públicaACTION_SYSTEM_FALLBACK_PICK_IMAGESe extras relacionados para oferecer uma experiência consistente do seletor de fotos para OEMs e apps do sistema como substituto. - Novo local de composição
LocalActivityque fornece oActivitypara o escopo atual, eliminando a necessidade de os desenvolvedores receberem umActivitydoLocalContext.
Versão 1.10.0-rc01
11 de dezembro de 2024
Lançamento de androidx.activity:activity:1.10.0-rc01, androidx.activity:activity-compose:1.10.0-rc01 e androidx.activity:activity-ktx:1.10.0-rc01. A versão 1.10.0-rc01 contém estes commits.
Correções de bugs
- Foi corrigido um problema em que a mudança do estado ativado enquanto o
PredictiveBackHandlerestava ativo interrompia o callback imediatamente. Ele vai concluir o callback atual, independente das mudanças de status ativado. (Ib8719).
Versão 1.10.0-beta01
13 de novembro de 2024
Lançamento de androidx.activity:activity:1.10.0-beta01, androidx.activity:activity-compose:1.10.0-beta01 e androidx.activity:activity-ktx:1.10.0-beta01 sem mudanças desde a última versão Alfa. A versão 1.10.0-beta01 contém estes commits.
Versão 1.10.0-alpha03
30 de outubro de 2024
Lançamento de androidx.activity:activity:1.10.0-alpha03, androidx.activity:activity-compose:1.10.0-alpha03 e androidx.activity:activity-ktx:1.10.0-alpha03. A versão 1.10.0-alpha03 contém estes commits.
Mudanças na API
- Adição de um novo local de composição
LocalActivityque fornece oActivitypara o escopo atual, eliminando a necessidade de os desenvolvedores receberem umActivitydoLocalContext. Ele também vem com uma nova regra de lint que verifica quando oLocalContextestá sendo transmitido incorretamente para umActivity. (I7746a, b/283009666)
Correções de bugs
- Da Activity
1.9.3: oPredictiveBackHandlernão vai mais acionar o callback depois que o manipulador for desativado. Isso corrige um problema em que oNavHostdo Navigation Compose gerava umIndexOutOfBoundsException. (I3f75e, b/365027664, b/340202286)
Atualização de dependências
- O Activity Compose agora depende do Compose Runtime 1.7.0 (I7746a, b/283009666).
Versão 1.10.0-alpha02
4 de setembro de 2024
Lançamento de androidx.activity:activity:1.10.0-alpha02, androidx.activity:activity-compose:1.10.0-alpha02 e androidx.activity:activity-ktx:1.10.0-alpha02. A versão 1.10.0-alpha02 contém estes commits.
Mudanças de comportamento
- Os contratos de resultado da atividade
PickVisualMediaePickMultipleVisualMediaque acionam o seletor de fotos não delegam mais diretamente ao Google Play Services se o seletor de fotos do sistema não estiver disponível. Em vez disso, eles usam a ação públicaACTION_SYSTEM_FALLBACK_PICK_IMAGESe extras relacionados para oferecer uma experiência consistente do seletor de fotos para OEMs e apps do sistema como substituto. Isso não deve afetar a experiência do usuário em dispositivos com uma versão recente do Google Play Services. (I3513d)
Correções de bugs
- Removemos o esboço manual do acesso a novas APIs da plataforma, já que isso acontece automaticamente pela modelagem de API ao usar o R8 com o AGP 7.3 ou mais recente (por exemplo, a versão 3.3 do R8) e para todos os builds ao usar o AGP 8.1 ou mais recente (por exemplo, a versão 8.1 do D8). Recomendamos que os clientes que não usam o AGP atualizem para a versão 8.1 ou mais recente do D8. Veja mais detalhes neste artigo. (I9496c, b/345472586)
- Da Activity
1.9.2: foi corrigido um problema em que a APIPredictiveBackHandlerdo Activity Compose continuava processando o gesto de retorno do sistema no frame em que foi desativada. Isso podia fazer com que bibliotecas como o Navigation Compose processassem o retorno mesmo com uma pilha de retorno vazia, resultando em umaIndexOutOfBoundsException. (Ie3301, b/340202286) - De Activity
1.9.1: corrigimos um problema com oPredictiveBackHandlerem que, depois de voltar pelo sistema, a tentativa de fazeronBackPressednoOnBackPressedDispatcherfalhava. (I5f1f8).
Versão 1.10.0-alpha01
26 de junho de 2024
Lançamento de androidx.activity:activity:1.10.0-alpha01, androidx.activity:activity-compose:1.10.0-alpha01 e androidx.activity:activity-ktx:1.10.0-alpha01. Esta versão foi desenvolvida em uma ramificação interna.
Novos recursos
- Adicionamos suporte a novos recursos do
PhotoPickerintroduzidos no Android V, incluindo a capacidade de escolher imagens em ordem e escolher qual guia (álbuns ou imagens) deve ficar visível inicialmente.
Versão 1.9
Versão 1.9.3
16 de outubro de 2024
Lançamento de androidx.activity:activity:1.9.3, androidx.activity:activity-compose:1.9.3 e androidx.activity:activity-ktx:1.9.3. A versão 1.9.3 contém estes commits.
Correções de bugs
- O
PredictiveBackHandlernão vai mais disparar o callback depois que o manipulador for desativado. Isso corrige um problema em que oNavHostdo Navigation Compose gerava umIndexOutOfBoundsException. (I3f75e, b/340202286)
Versão 1.9.2
4 de setembro de 2024
Lançamento de androidx.activity:activity:1.9.2, androidx.activity:activity-compose:1.9.2 e androidx.activity:activity-ktx:1.9.2. A versão 1.9.2 contém estes commits.
Correções de bugs
- Foi corrigido um problema em que a API
PredictiveBackHandlerdo Activity Compose continuava processando o gesto de retorno do sistema no frame em que foi desativada. Isso poderia fazer com que bibliotecas como o Navigation Compose processassem o retorno mesmo com uma backstack vazia, resultando em umaIndexOutOfBoundsException. (Ie3301, b/340202286)
Versão 1.9.1
24 de julho de 2024
Lançamento de androidx.activity:activity:1.9.1, androidx.activity:activity-compose:1.9.1 e androidx.activity:activity-ktx:1.9.1. A versão 1.9.1 contém estes commits.
Correções de bugs
- Correção de um problema com
PredictiveBackHandlerem que, depois de voltar ao sistema, a tentativa de fazeronBackPressednoOnBackPressedDispatcherfalhava. (I5f1f8).
Versão 1.9.0
17 de abril de 2024
Lançamento de androidx.activity:activity:1.9.0, androidx.activity:activity-compose:1.9.0 e androidx.activity:activity-ktx:1.9.0. A versão 1.9.0 contém estes commits.
Mudanças importantes desde a versão 1.8.0
- A
ComponentActivityagora implementaOnUserLeaveHintProviderpara permitir que os componentes façam callbacks para eventosonUserLeaveHint. - As APIs
OnBackPressedCallback,BackHandlerePredictiveBackHandleragora mostram um aviso ao chamaronBackPressedDispatcher.onBackPressed()ao processar a ação de voltar, já que isso sempre vai interromper a animação de volta preditiva. Consulte o guia de práticas recomendadas para mais detalhes. - O restante das APIs Activity foi reescrito em Kotlin, e todas as extensões disponíveis anteriormente em
activity-ktxforam movidas paraactivity.activity-ktxestá completamente vazio.- Como parte da conversão de
ActivityResultLauncherpara Kotlin, o métodogetContractagora é uma propriedade abstrata do Kotlin. Essa é uma mudança compatível com binários, mas interruptiva da origem se a implementação deActivityResultLauncherfor escrita em Kotlin.
- Como parte da conversão de
Versão 1.9.0-rc01
3 de abril de 2024
Lançamento de androidx.activity:activity:1.9.0-rc01, androidx.activity:activity-compose:1.9.0-rc01 e androidx.activity:activity-ktx:1.9.0-rc01. A versão 1.9.0-rc01 contém estes commits.
Atualização de dependências
- A atividade agora depende do Profile Installer 1.3.1.
Versão 1.9.0-beta01
20 de março de 2024
Lançamento de androidx.activity:activity:1.9.0-beta01, androidx.activity:activity-compose:1.9.0-beta01 e androidx.activity:activity-ktx:1.9.0-beta01. A versão 1.9.0-beta01 contém estes commits.
Correções de bugs
- Foi corrigida uma regressão de desempenho na inicialização de atividades introduzida na Activity
1.9.0-alpha02causada pela chamada doOnBackPressedDispatchercomo parte da criação da atividade. (Ie75e3).
Versão 1.9.0-alpha03
7 de fevereiro de 2024
Lançamento de androidx.activity:activity:1.9.0-alpha03, androidx.activity:activity-compose:1.9.0-alpha03 e androidx.activity:activity-ktx:1.9.0-alpha03. A versão 1.9.0-alpha03 contém estes commits.
Aviso do lint
- As APIs
OnBackPressedCallback,BackHandlerePredictiveBackHandleragora mostram um aviso ao chamaronBackPressedDispatcher.onBackPressed()ao processar a ação de voltar, já que isso sempre vai interromper a animação de volta preditiva. Consulte o guia de práticas recomendadas para mais detalhes. (1e4222, 2c950d, b/287505200)
Correções de bugs
- Se um evento de retorno for enviado pelo sistema durante um gesto de retorno preditivo já em execução, o gesto de retorno preditivo atual será cancelado, e o novo evento de retorno assumirá o controle para iniciar um novo gesto de retorno preditivo. (I3482e).
- Foi corrigida uma falha ao acessar o
onBackPressedDispatcherde umComponentActivitypela primeira vez em uma linha de execução em segundo plano. Agora é seguro acessar oonBackPressedDispatcherem qualquer linha de execução. (I79955)
Versão 1.9.0-alpha02
24 de janeiro de 2024
Lançamento de androidx.activity:activity:1.9.0-alpha02, androidx.activity:activity-compose:1.9.0-alpha02 e androidx.activity:activity-ktx:1.9.0-alpha02. A versão 1.9.0-alpha02 contém estes commits.
Conversões para Kotlin
- O
ActivityResultRegistryfoi reescrito em Kotlin. Isso garante que a nulidade dos genéricos no contrato transmitido pararegisterseja transmitida corretamente para oActivityResultLauncherretornado a você. (I121f0). - O
ActivityResultfoi reescrito em Kotlin. As extensões KotlinActivityResultque oferecem suporte à desestruturação nos camposresultCodeedataforam movidas deactivity-ktxparaactivity. (I0565a). - As extensões Kotlin de
by viewModels()paraComponentActivityetrackPipAnimationHintViewforam movidas deactivity-ktxparaactivity. O artefatoactivity-ktxagora está completamente vazio. (I0a444).
Correções de bugs
- A API
enableEdgeToEdgeagora desenha em torno de todos os cortes de tela. (a3644b, b/311173461) - Da Activity
1.8.2: foi corrigido o extra transmitido aoACTION_SYSTEM_FALLBACK_PICK_IMAGESdo contrato de atividade do seletor de fotos para transmiti-lo corretamente à chaveEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, em vez de usar o extra com a chave"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". É altamente recomendável se você for um OEM que implementa um seletor de fotos de substituição do sistema para oferecer suporte aos dois extras e garantir a maior compatibilidade possível. (I96a00).
Versão 1.9.0-alpha01
29 de novembro de 2023
Lançamento de androidx.activity:activity:1.9.0-alpha01, androidx.activity:activity-compose:1.9.0-alpha01 e androidx.activity:activity-ktx:1.9.0-alpha01. A versão 1.9.0-alpha01 contém estes commits.
Novos recursos
- A
ComponentActivityagora implementaOnUserLeaveHintProviderpara permitir que os componentes façam callbacks para eventosonUserLeaveHint. (I54892).
Mudanças na API
- O
ComponentActivityfoi reescrito em Kotlin. (I14f31). - O
ActivityResultCallerfoi reescrito em Kotlin. (Ib02e4). - O
ActivityResultLauncherfoi reescrito em Kotlin. Como parte dessa conversão, o métodogetContractagora é uma propriedade abstrata do Kotlin. Essa é uma mudança compatível com binários, mas interruptiva da origem se a implementação deActivityResultLauncherfor escrita em Kotlin. (Id4615) - O
PickVisualMediaRequestagora tem o mesmo nível mínimo da API 19 que o contrato de resultado da atividadePickVisualMedia. (Id6e21).
Atualização de dependências
- A atividade agora depende do Core
1.13.0-alpha01. (I14f31).
Versão 1.8
Versão 1.8.2
13 de dezembro de 2023
Lançamento de androidx.activity:activity:1.8.2, androidx.activity:activity-compose:1.8.2 e androidx.activity:activity-ktx:1.8.2. A versão 1.8.2 contém estes commits.
Correções de bugs
- Correção do extra transmitido ao
ACTION_SYSTEM_FALLBACK_PICK_IMAGESdo contrato de atividade do seletor de fotos para transmitir corretamente a chaveEXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, em vez de usar o extra com a chave"com.google.android.gms.provider.extra.PICK_IMAGES_MAX". É altamente recomendável se você for um OEM que implementa um seletor de fotos de substituição do sistema para oferecer suporte aos dois extras e garantir a maior compatibilidade possível. (I96a00).
Versão 1.8.1
15 de novembro de 2023
Lançamento de androidx.activity:activity:1.8.1, androidx.activity:activity-compose:1.8.1 e androidx.activity:activity-ktx:1.8.1. A versão 1.8.1 contém estes commits.
Correções de bugs
- O
OnBackPressedDispatcheragora continua enviando para oOnBackPressedCallbackcorreto, mesmo depois que um novoOnBackPressedCallbacké adicionado enquanto o gesto de retorno está sendo processado. (Id0ff6)
Versão 1.8.0
4 de outubro de 2023
Lançamento de androidx.activity:activity:1.8.0, androidx.activity:activity-compose:1.8.0 e androidx.activity:activity-ktx:1.8.0. A versão 1.8.0 contém estas confirmações.
Mudanças importantes desde a versão 1.7.0
- Volta preditiva: o
OnBackPressedCallbackagora oferece novos callbacks de volta preditiva para processar o início do gesto de volta, o progresso ao longo do gesto e o cancelamento dele, além do callbackhandleOnBackPressed()anterior para quando o gesto de volta for confirmado. Ele também vem com o elemento combinávelPredictiveBackHandlerpara processar eventos de gestos de volta preditivos no Activity Compose. Ele fornece um fluxo de objetos BackEventCompat que precisam ser coletados na lambda de suspensão fornecida:
PredictiveBackHandler { progress: Flow<BackEventCompat> ->
// code for gesture back started
try {
progress.collect { backEvent ->
// code for progress
}
// code for completion
} catch (e: CancellationException) {
// code for cancellation
}
}
O ComponentActivity.onBackPressed() foi descontinuado em favor das APIs para processar o retorno. Os desenvolvedores agora precisam usar o OnBackPressedDispatcher em vez de substituir esse método.
- EdgeToEdge:
ComponentActivity.enableEdgeToEdge()foi adicionado para configurar facilmente a exibição de ponta a ponta de maneira compatível com versões anteriores.
Versão 1.8.0-rc01
20 de setembro de 2023
Lançamento de androidx.activity:activity:1.8.0-rc01, androidx.activity:activity-compose:1.8.0-rc01 e androidx.activity:activity-ktx:1.8.0-rc01. A versão 1.8.0-rc01 contém estas confirmações.
Versão 1.8.0-beta01
6 de setembro de 2023
Lançamento de androidx.activity:activity:1.8.0-beta01, androidx.activity:activity-compose:1.8.0-beta01 e androidx.activity:activity-ktx:1.8.0-beta01. A versão 1.8.0-beta01 contém estas confirmações.
Melhoria da documentação
- Melhoramos a documentação de
BackEventCompat. (aosp/2722254).
Versão 1.8.0-alpha07
23 de agosto de 2023
Lançamento de androidx.activity:activity:1.8.0-alpha07, androidx.activity:activity-compose:1.8.0-alpha07 e androidx.activity:activity-ktx:1.8.0-alpha07. A versão 1.8.0-alpha07 contém estas confirmações.
Novos recursos
O Activity Compose adicionou um novo elemento combinável
PredictiveBackHandlerpara processar eventos de gesto de volta preditiva. Ele fornece umFlowde objetosBackEventCompatque precisam ser coletados na lambda de suspensão fornecida:PredictiveBackHandler { progress: Flow<BackEventCompat> -> // code for gesture back started try { progress.collect { backEvent -> // code for progress } // code for completion } catch (e: CancellationException) { // code for cancellation } }Ele também vem com um aviso de tempo de compilação via regra lint para garantir que as chamadas
Flowcollect(). (Id2773, b/294884345).O
onBackPressedDispatcheremComponentActivityagora é inicializado lentamente para que seja criado apenas quando necessário. (I0bf8e).
Correções de bugs
- O
ComponentActivitynão vai mais mostrar um NPE no Android 13 quando receber um callbackonBackPressed()e a atividade já tiver sidoDESTROYED. (Idb055, b/291869278) - Remoção de usos da API
isAtLeastU()experimental (Ie9117, b/289269026).
Versão 1.8.0-alpha06
21 de junho de 2023
Lançamento de androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06 e androidx.activity:activity-ktx:1.8.0-alpha06. A versão 1.8.0-alpha06 contém estes commits.
Novos recursos
- O
OnBackPressedDispatcheragora cancela corretamente todos os callbacks removidos durante um gesto de volta preditiva. (I3f90f).
Mudanças na API
- Ao transmitir
SystemBarStyle.autopara a APIenableEdgeToEdge, agora é possível substituir o parâmetro lambdadetectDarkModepara fornecer uma lógica personalizada de detecção do modo noturno. (aosp/2546393, b/278263793)
Versão 1.8.0-alpha05
7 de junho de 2023
Lançamento de androidx.activity:activity:1.8.0-alpha05, androidx.activity:activity-compose:1.8.0-alpha05 e androidx.activity:activity-ktx:1.8.0-alpha05. Esta versão foi desenvolvida em uma ramificação interna.
Mudanças na API
- A atividade agora oferece uma classe
BackEventCompatque serve como uma versão compatível com versões anteriores doBackEvent, que é independente da classeBackEventdo framework. - Mudança interruptiva:os métodos
handleOnBackStartedehandleOnBackProgresseddeOnBackPressedCallbackagora recebem uma instânciaandroidx.activity.BackEventCompatem vez de uma classeandroid.window.BackEventdo framework. As APIs@VisibleForTestingequivalentes emOnBackPressedDispatchertambém foram atualizadas. - O construtor de
OnBackPressedDispatcheragora usa uma instânciaConsumer<Boolean>opcional que permite que os proprietários do dispatcher recebam um callback sempre que o número de callbacks ativados mudar de zero para diferente de zero ou vice-versa.
Correções de bugs
- Na Activity
1.7.2: correção da falha deReportDrawnao sair de uma tela antes de chamarreport. (Ic46f1, b/260506820).
Versão 1.8.0-alpha04
10 de maio de 2023
Lançamento de androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04 e androidx.activity:activity-ktx:1.8.0-alpha04. O lançamento foi feito em uma ramificação interna.
Correções de bugs
- Da Activity 1.7.1: - O
ReportFullyDrawExecuternão vaza mais ao usarComponentActivitycomActivityScenario. (Id2ff2, b/277434271).
Versão 1.8.0-alpha03
12 de abril de 2023
Lançamento de androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03 e androidx.activity:activity-ktx:1.8.0-alpha03. O lançamento foi feito em uma ramificação interna.
Novos recursos
- Adicionamos
ComponentActivity.setUpEdgeToEdge()para configurar facilmente a exibição de ponta a ponta de maneira compatível com versões anteriores.
Mudanças na API
- O
ComponentActivity.onBackPressed()foi descontinuado em favor das APIs para processar o retorno. Os desenvolvedores agora precisam usar oOnBackPressedDispatcherem vez de substituir esse método. (Ibce2f, b/271596918). ComponentDialogeComponentActivityagora contêm a API públicainitViewTreeOwners(), que é usada para inicializar todos os proprietários da árvore de visualização antes de definir a visualização de conteúdo. (Ibdce0, b/261314581).
Correções de bugs
- Foi corrigido um problema em que os Fragments invalidavam incorretamente os MenuHosts e causavam um comportamento inesperado em outros menus da Activity. (I9404e, b/244336571).
Outras mudanças
- O
ActivityResultRegisteragora usa oRandomdo Kotlin em vez do Java. (I4d98f, b/272096025).
Versão 1.8.0-alpha02
8 de março de 2023
Lançamento de androidx.activity:activity:1.8.0-alpha02, androidx.activity:activity-compose:1.8.0-alpha02 e androidx.activity:activity-ktx:1.8.0-alpha02. Desenvolvido em uma ramificação interna.
Atualização de dependências
- Da Activity
1.7.0-rc01: a Activity agora depende doLifecycle 2.6.0.
Versão 1.8.0-alpha01
8 de fevereiro de 2023
Lançamento de androidx.activity:activity:1.8.0-alpha01, androidx.activity:activity-compose:1.8.0-alpha01 e androidx.activity:activity-ktx:1.8.0-alpha01. Isso foi criado em uma ramificação interna.
Novos recursos
- A classe
OnBackPressedCallbackagora contém novos callbacks de progresso de volta preditiva para processar o início do gesto de volta, o progresso ao longo do gesto e o cancelamento dele, além do callbackhandleOnBackPressed()anterior para quando o gesto de volta for confirmado.
Versão 1.7
Versão 1.7.2
24 de maio de 2023
Lançamento de androidx.activity:activity:1.7.2, androidx.activity:activity-compose:1.7.2 e androidx.activity:activity-ktx:1.7.2. A versão 1.7.2 contém estes commits.
Correções de bugs
- Correção da falha de
ReportDrawnao sair de uma tela antes de chamarreport. (Ic46f1, b/260506820).
Versão 1.7.1
19 de abril de 2023
Lançamento de androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1 e androidx.activity:activity-ktx:1.7.1. A versão 1.7.1 contém estas confirmações.
Correções de bugs
- O
ReportFullyDrawExecuternão vaza mais ao usarComponentActivitycomActivityScenario. (Id2ff2, b/277434271).
Versão 1.7.0
22 de março de 2023
Lançamento de androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0 e androidx.activity:activity-ktx:1.7.0. A versão 1.7.0 contém estas confirmações.
Mudanças importantes desde a versão 1.6.0
- Os contratos de atividade do seletor de fotos em
PickVisualMediaePickMultipleVisualMediaforam atualizados para incluir um substituto adicional quandoMediaStore.ACTION_PICK_IMAGESnão está disponível. Isso permite que OEMs e apps do sistema, como o Google Play Services, ofereçam uma experiência consistente do seletor de fotos em uma variedade maior de dispositivos Android e níveis de API ao implementar a ação de substituição. O seletor de fotos vai usar esse substituto se ele estiver disponível antes de voltar a usarIntent.ACTION_OPEN_DOCUMENT, que continua compatível com todos os dispositivos com API 19 e versões mais recentes. - Agora,
ComponentDialogimplementaSavedStateRegistryOwner, tem acesso ao próprioSavedStateRegistrye define oSavedStateRegistryOwnerpara oViewTree. É possível usar o Jetpack Compose em umaComponentDialog, já que ela atende aoLifecycleOwnereSavedStateRegistryOwneranexados à janela usando os requisitos das APIsViewTree. IntentSenderRequest.Builder.setFlags()agora permite definir várias sinalizações deIntent, em vez de apenas uma
Conversão para Kotlin
Várias classes de atividade foram convertidas para Kotlin. Todas as classes convertidas ainda mantêm a compatibilidade binária com versões anteriores. As seguintes classes têm mudanças incompatíveis com a origem para classes escritas em Kotlin: ActivityResultRegistryOwner e OnBackPressedDispatcherOwner.
A tabela abaixo mostra as conversões de origem para a nova versão da Atividade:
| Atividade 1.5 | Atividade 1.6 |
|---|---|
override fun getActivityResultRegistry() = activityResultRegistry |
override val activityResultRegistry = activityResultRegistry |
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher |
override val onBackPressedDispatcher = onBackPressedDispatcher |
Essas classes também foram convertidas para Kotlin, mas permanecem compatíveis com a origem: ContextAware, ContextAwareHelper, OnContextAvailableListener, IntentSenderRequest e OnBackPressedDispatcher.
APIs FullyDrawnReporter
ComponentActivity agora fornece uma instância de FullyDrawnReporter que permite que vários componentes informem quando estão prontos para interação. O ComponentActivity espera a conclusão de todos os componentes antes de chamar reportFullyDrawn() por você. Essas APIs cuidam dos requisitos de tempo para você e não precisam ser chamadas como parte de uma chamada onDraw.
O uso dessas APIs é incentivado para:
- sinalizar ao Android Runtime quando a inicialização é concluída para garantir que todo o código executado durante uma sequência de inicialização de vários frames seja incluído e priorizado para compilação em segundo plano;
- sinalizar à Macrobenchmark e ao Play vitals quando o aplicativo precisa ser considerado totalmente renderizado para métricas de inicialização. Assim, você pode acompanhar a performance.
Três APIs Activity Compose foram adicionadas para facilitar o uso do FullyDrawnReporter em elementos combináveis individuais:
ReportDrawnindica que o elemento combinável está pronto para interação.- O
ReportDrawnWhenusa um predicado (ou seja,list.count > 0) para indicar que o elemento combinável está pronto para interação. - O
ReportDrawnAfterusa um método de suspensão que, quando concluído, indica que você já pode interagir.
Atualizações de dependência
- A Activity depende do Lifecycle
2.6.1. (8fc31d) - A atividade agora depende do ProfileInstaller
1.3.0. (83d3b1)
Versão 1.7.0-rc01
8 de março de 2023
Lançamento de androidx.activity:activity:1.7.0-rc01, androidx.activity:activity-compose:1.7.0-rc01 e androidx.activity:activity-ktx:1.7.0-rc01. A versão 1.7.0-rc01 contém estas confirmações.
Atualização de dependências
- A atividade agora depende do
Lifecycle 2.6.0.
Versão 1.7.0-beta02
22 de fevereiro de 2023
Lançamento de androidx.activity:activity:1.7.0-beta02, androidx.activity:activity-compose:1.7.0-beta02 e androidx.activity:activity-ktx:1.7.0-beta02. A versão 1.7.0-beta02 contém estas confirmações.
Mudanças na API
- Agora, a ação e os extras usados pelos contratos
PickVisualMediaePickMultipleVisualMediacomo substitutos para quandoMediaStore.ACTION_PICK_IMAGESnão está disponível são constantes públicas que oferecem estabilidade de API para OEMs e apps do sistema que querem oferecer uma experiência consistente do seletor de fotos. A implementação desse substituto ainda é limitada a apps do sistema. (Icd320).
Versão 1.7.0-beta01
8 de fevereiro de 2023
Lançamento de androidx.activity:activity:1.7.0-beta01, androidx.activity:activity-compose:1.7.0-beta01 e androidx.activity:activity-ktx:1.7.0-beta01. A versão 1.7.0-beta01 contém estas confirmações.
Novos recursos
IntentSenderRequest.Builder.setFlags()agora permite definir várias sinalizações deIntent, em vez de apenas uma (Iac04c).
Correções de bugs
- O substituto de
PickVisualMediapara quando o seletor de fotos do framework não estiver disponível agora limita corretamente o processamento a apps instalados na imagem do sistema do dispositivo (If8ae6).
Conversões para Kotlin
- Agora, o
ActivityResultRegistryOwneré escrito em Kotlin. Essa é uma mudança incompatível com a fonte das classes escritas em Kotlin. Agora é necessário substituir a propriedadeactivityResultRegistryem vez de implementar a funçãogetActivityResultRegistry()anterior (I0b00e). - Agora, o
OnBackPressedDispatcherOwneré escrito em Kotlin. Essa é uma mudança incompatível com a fonte das classes escritas em Kotlin. Agora é necessário substituir a propriedadeonBackPressedDispatcherem vez de implementar a funçãogetOnBackPressedDispatcheranterior (Ia277d). ContextAware,ContextAwareHelper,OnContextAvailableListener,IntentSenderRequesteOnBackPressedDispatcheragora são escritos em Kotlin (I1a73e, Iada92, aosp/2410754, I18ac7, b/257291701).
Versão 1.7.0-alpha04
25 de janeiro de 2023
Lançamento de androidx.activity:activity:1.7.0-alpha04, androidx.activity:activity-compose:1.7.0-alpha04 e androidx.activity:activity-ktx:1.7.0-alpha04. A versão 1.7.0-alpha04 contém estas confirmações.
Novos recursos
- Os contratos de resultado da atividade
PickVisualMediaePickMultipleVisualMediaagora vão usar um seletor de fotos fornecido pelo Google Play Services, quando disponível nos casos em que o seletor do sistema Android (por exemplo,MediaStore.ACTION_PICK_IMAGES) não está disponível. A APIisPhotoPickerAvailable(), que só detecta o seletor de fotos fornecido pelo sistema Android, foi descontinuada. É recomendável usar a nova APIisPhotoPickerAvailable(Context), que informa se um dos seletores de fotos está disponível (I55be6).
Versão 1.7.0-alpha03
11 de janeiro de 2023
Lançamento de androidx.activity:activity:1.7.0-alpha03, androidx.activity:activity-compose:1.7.0-alpha03 e androidx.activity:activity-ktx:1.7.0-alpha03. A versão 1.7.0-alpha03 contém estas confirmações.
Novos recursos
- Agora,
ComponentDialogimplementaSavedStateRegistryOwner, tem acesso ao próprioSavedStateRegistrye define oSavedStateRegistryOwnerpara a ViewTree. É possível usar o Jetpack Compose em umaComponentDialog, já que ela atende aoLifecycleOwnereSavedStateRegistryOwneranexados à janela usando os requisitos das APIs ViewTree (Idca17, I73468 b/261162296).
Mudanças na API
- Adição de um elemento combinável
ReportDrawn, que marca a atividade imediatamente como pronta para chamarreportFullyDrawn(Ic5b14, b/259687964).
Conversões para Kotlin
- As classes
ActvitiyResultCallbackeOnBackPressedCallbackforam convertidas para Kotlin, mantendo a compatibilidade de origem e binária (Ifc5e5, Ide1b0, b/257291701).
Versão 1.7.0-alpha02
24 de outubro de 2022
Lançamento de androidx.activity:activity:1.7.0-alpha02, androidx.activity:activity-compose:1.7.0-alpha02 e androidx.activity:activity-ktx:1.7.0-alpha02. A versão 1.7.0-alpha02 contém estas confirmações.
Correções de bugs
- Da Activity
1.6.1: foi corrigido um problema com o contrato da Activity Result dePickMultipleVisualMediaque não era iniciado em dispositivos Android R ao usar o valor padrão demaxItems(Ie2776, b/249182130).
Versão 1.7.0-alpha01
5 de outubro de 2022
Lançamento de androidx.activity:activity:1.7.0-alpha01, androidx.activity:activity-compose:1.7.0-alpha01 e androidx.activity:activity-ktx:1.7.0-alpha01. A versão 1.7.0-alpha01 contém estas confirmações.
APIs FullyDrawnReporter
ComponentActivity agora fornece uma instância de FullyDrawnReporter que permite que vários componentes informem quando estão prontos para interação. O ComponentActivity espera a conclusão de todos os componentes antes de chamar reportFullyDrawn() por você. Essas APIs cuidam dos requisitos de tempo para você e não precisam ser chamadas como parte de uma chamada onDraw.
O uso dessas APIs é incentivado para:
- sinalizar ao Android Runtime quando a inicialização é concluída para garantir que todo o código executado durante uma sequência de inicialização de vários frames seja incluído e priorizado para compilação em segundo plano;
- sinalizar à Macrobenchmark e ao Play vitals quando o aplicativo precisa ser considerado totalmente renderizado para métricas de inicialização. Assim, você pode acompanhar a performance.
Duas APIs Activity Compose foram adicionadas para facilitar o uso do FullyDrawnReporter em elementos combináveis individuais:
- O
ReportDrawnWhenusa um predicado (ou seja,list.count > 0) para indicar que o elemento combinável está pronto para interação. - O
ReportDrawnAfterusa um método de suspensão que, quando concluído, indica que você já pode interagir.
Versão 1.6.1
Versão 1.6.1
24 de outubro de 2022
Lançamento de androidx.activity:activity:1.6.1, androidx.activity:activity-compose:1.6.1 e androidx.activity:activity-ktx:1.6.1. A versão 1.6.1 contém estas confirmações.
Correções de bugs
- Foi corrigido um problema com o contrato da Activity Result
PickMultipleVisualMediaque não era iniciado em dispositivos Android R ao usar o valor padrão demaxItems(Ie2776, b/249182130).
Versão 1.6.0
Versão 1.6.0
21 de setembro de 2022
Lançamento de androidx.activity:activity:1.6.0, androidx.activity:activity-compose:1.6.0 e androidx.activity:activity-ktx:1.6.0. A versão 1.6.0 contém estas confirmações.
Mudanças importantes desde a versão 1.5.0
- Adição de
ActivityResultContracts.PickVisualMediaeActivityResultContracts.PickMultipleVisualMediapara fornecer um contrato compatível com versões anteriores que usaMediaStore.ACTION_PICK_IMAGESquando o seletor de fotos está disponível eIntent.ACTION_OPEN_DOCUMENTquando não está. - No Android 13, o
OnBackInvokedCallbacké integrado aoOnBackPressedDispatchersfornecido peloComponentActivitye peloComponentDialog. Isso garante que todas as APIs criadas naOnBackPressedDispatcherfuncionem ao ativar um gesto de volta preditivo.
Versão 1.6.0-rc02
7 de setembro de 2022
Lançamento de androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02 e androidx.activity:activity-ktx:1.6.0-rc02. A versão 1.6.0-rc02 contém estas confirmações.
Correções de bugs
OnBackPressedDispatcheragora registra oOnBackInvokedCallbackcomPRIORITY_DEFAULTem vez dePRIORITY_OVERLAY(I3901f).- As classes que ampliam
ComponentActivitysempre vão enviar os dois callbacksonMultiWindowModeChanged()(Ic4d85). - O callback
ActivityResultRegistrynão vai mais retornar um resultado para oActivityResultCallbackquando a chamada delaunchgerar umaExceptione o callback for registrado sem umLifecycleOwner(Ia7ff7, b/238350794). - Agora, a
ComponentActivityvai enviar as chamadas do menu da maneira correta sem precisar chamar a superfunção na atividade (Ie33c5, b/238057118).
Atualização de dependências
- A biblioteca
Activityagora depende do Lifecycle2.5.1(If6697).
Versão 1.6.0-rc01
24 de agosto de 2022
Lançamento de androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01 e androidx.activity:activity-ktx:1.6.0-rc01. A versão 1.6.0-rc01 contém estas confirmações.
Correções de bugs
- A inicialização de um
OnBackPressedDispatchernão vai causar maisClassVerificationErrors ao usar versões do SDK anteriores à 33 (Ic32e1). - As classes que substituem o callback
onPictureInPictureModeChanged()deComponentActivityagora sempre vão enviar os próprios callbacks (Ib7fdb).
Versão 1.6.0-beta01
10 de agosto de 2022
Lançamento de androidx.activity:activity:1.6.0-beta01, androidx.activity:activity-compose:1.6.0-beta01 e androidx.activity:activity-ktx:1.6.0-beta01. A versão 1.6.0-beta01 contém estas confirmações.
Mudanças na API
- Os métodos
startActivityForResultestartIntentSenderForResultdescontinuados foram marcados emComponentActivitycom@NonNull, porque a transmissão denullsempre resultava em uma falha (Id2a25, b/231476082).
Correções de bugs
- Da Activity
1.5.1: oActivityResultRegistrynão vai mais retornar um resultado para oActivityResultCallbackquando a chamada delaunchgerar umaExceptione o callback for registrado sem umLifecycleOwner(Ia7ff7, b/238350794). - Da Activity
1.5.1:ComponentActivityagora vai enviar da maneira correta as chamadas do menu para as substituiçõesonPrepareOptionMenu(),onCreateOptionsMenu()eonOptionsItemSelected()sem a necessidade de chamar a superfunção (Ie33c5, b/238057118).
Atualização de dependências
- Da Activity
1.5.1: a bibliotecaActivityagora depende da versão2.5.1doLifecycle(If6697).
Versão 1.6.0-alpha05
15 de junho de 2022
Lançamento de androidx.activity:activity:1.6.0-alpha05, androidx.activity:activity-compose:1.6.0-alpha05 e androidx.activity:activity-ktx:1.6.0-alpha05. A versão 1.6.0-alpha05 foi desenvolvida em uma ramificação de pré-lançamento particular e não tem confirmações públicas.
Mudanças na API
- O
minCompileSdkagora é 33 para se alinhar com o SDK do Tiramisu Beta 3.
Correções de bugs
- Foi corrigida uma falha em dispositivos mais antigos ao fazer a verificação de extensão do SDK para o
ActivityResultContractPickVisualMedia. Agora, ele funciona comACTION_OPEN_DOCUMENTem dispositivos com Android 10 e versões anteriores.
Versão 1.6.0-alpha04
18 de maio de 2022
Lançamento de androidx.activity:activity:1.6.0-alpha04 e androidx.activity:activity-ktx:1.6.0-alpha04.
Correções de bugs
- Foi corrigido um erro na classe
PickVisualMediaRequestem que a tentativa de criar uma solicitação, seja pelo builder ou pela função do Kotlin de nível superior, resultava em um estouro de pilha. - A interface
OnBackInvokedCallbackno Android 13 Dev Beta 2 foi integrada à classeOnBackPressedDispatcherfornecida pelaComponentDialog. Isso garante que todas as APIs criadas naOnBackPressedDispatcherfuncionem ao ativar um gesto de volta preditivo.
Versão 1.6.0-alpha03
27 de abril de 2022
Lançamento de androidx.activity:activity:1.6.0-alpha03, androidx.activity:activity-compose:1.6.0-alpha03 e androidx.activity:activity-ktx:1.6.0-alpha03.
- Observação: essa versão vai ser compilada apenas com o SDK do Android 13 Developer Beta 1.
Novos recursos
- Adição de
ActivityResultContracts.PickVisualMediaeActivityResultContracts.PickMultipleVisualMediapara fornecer um contrato compatível com versões anteriores que usaMediaStore.ACTION_PICK_IMAGESquando o seletor de fotos está disponível eIntent.ACTION_OPEN_DOCUMENTquando não está. - A interface
OnBackInvokedCallbackno Android 13 Dev Beta 1 foi integrada à classeOnBackPressedDispatcherfornecida pelaComponentActivity. Isso garante que todas as APIs criadas naOnBackPressedDispatcherfuncionem ao ativar um gesto de volta preditivo.
Versão 1.6.0-alpha01
23 de março de 2022
Lançamento de androidx.activity:activity:1.6.0-alpha01, androidx.activity:activity-compose:1.6.0-alpha01 e androidx.activity:activity-ktx:1.6.0-alpha01.
- Observação: essa versão vai ser compilada apenas com o SDK da prévia para desenvolvedores 2 do Android 13.
Novos recursos
- Mudanças integradas no Android 13 Dev Preview 2 na
ComponentActivity.
Versão 1.5.1
Versão 1.5.1
27 de julho de 2022
Lançamento de androidx.activity:activity:1.5.1, androidx.activity:activity-compose:1.5.1 e androidx.activity:activity-ktx:1.5.1. A versão 1.5.1 contém estas confirmações.
Correções de bugs
A classe
ActivityResultRegistrynão vai retornar mais um resultado para a interfaceActivityResultCallbackquando a chamada delaunch()gerar umaExceptione o callback for registrado sem umLifecycleOwner(Ia7ff7, b/238350794).A
ComponentActivityagora vai enviar corretamente chamadas de menu para substituições deonPrepareOptionMenu(),onCreateOptionsMenu()eonOptionsItemSelected()sem a necessidade de chamar a superfunção (Ie33c5, b/238057118).
Atualização de dependências
- A biblioteca
Activityagora depende do Lifecycle2.5.1(If6697).
Versão 1.5.0
Versão 1.5.0
29 de junho de 2022
Lançamento de androidx.activity:activity:1.5.0, androidx.activity:activity-compose:1.5.0 e androidx.activity:activity-ktx:1.5.0. A versão 1.5.0 contém estas confirmações.
Mudanças importantes desde a versão 1.4.0
- ComponentDialog: a
ComponentDialogé uma subclasse deDialogque inclui umOnBackPressedDispatcherque vai ser chamado quando o botão "Voltar" do sistema for pressionado e a caixa de diálogo estiver visível. É importante ressaltar que essa subclasse também define aViewTreeOnBackPressedDispatcherOwner, permitindo que as visualizações tenham uma maneira genérica de extrair o agente correto, independente de ele existir em umaComponentActivityou umaComponentDialog. - Interfaces de callback: a
ComponentActivityagora implementa um conjunto de interfaces de callback modulares que podem ser usadas no lugar dos callbacks deActivity. As interfaces incluem:OnNewIntentProvider,OnConfigurationChangedProvider,OnTrimMemoryProvider,OnPictureInPictureModeChangedProvidereOnMultiWindowModeChangedProvider. - Integração de CreationExtras: a
ComponentActivityagora pode fornecer uma interfaceViewModelProvider.Factorysem estado usando a classeCreationExtrasdo Lifecycle2.5.0.
Outras mudanças
- O construtor sem parâmetro para
ActivityResultContracts.CreateDocumentfoi descontinuado e substituído por um novo construtor, que usa um Tipo MIME concreto (por exemplo, "image/png"), conforme exigido porIntent.ACTION_CREATE_DOCUMENT.
Versão 1.5.0-rc01
11 de maio de 2022
Lançamento de androidx.activity:activity:1.5.0-rc01, androidx.activity:activity-compose:1.5.0-rc01 e androidx.activity:activity-ktx:1.5.0-rc01, sem mudanças desde a versão 1.5.0-beta01. A versão 1.5.0-rc01 contém estas confirmações.
Versão 1.5.0-beta01
20 de abril de 2022
Lançamento de androidx.activity:activity:1.5.0-beta01, androidx.activity:activity-compose:1.5.0-beta01 e androidx.activity:activity-ktx:1.5.0-beta01. A versão 1.5.0-beta01 contém estas confirmações.
Atualizações de dependência
- A Activity depende do Lifecycle
2.4.0-beta01.
Versão 1.5.0-alpha05
6 de abril de 2022
Lançamento de androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05 e androidx.activity:activity-ktx:1.5.0-alpha05. A versão 1.5.0-alpha05 contém estas confirmações.
Correções de bugs
- O
onPanelClosed()daComponentActivitytambém chama o superonPanelClosed(), corrigindo um problema em que o métodoonContextMenuClosednão era chamado (Ib6f77).
Versão 1.5.0-alpha04
23 de março de 2022
Lançamento de androidx.activity:activity:1.5.0-alpha04, androidx.activity:activity-compose:1.5.0-alpha04 e androidx.activity:activity-ktx:1.5.0-alpha04. A versão 1.5.0-alpha04 contém estas confirmações.
Correções de bugs
- A
SavedStateViewFactoryagora oferece suporte ao uso deCreationExtrasmesmo quando inicializada com umSavedStateRegistryOwner. Se extras forem fornecidos, os argumentos inicializados serão ignorados (I6c43b, b/224844583).
Versão 1.5.0-alpha03
23 de fevereiro de 2022
Lançamento de androidx.activity:activity:1.5.0-alpha03, androidx.activity:activity-compose:1.5.0-alpha03 e androidx.activity:activity-ktx:1.5.0-alpha03. A versão 1.5.0-alpha03 contém estas confirmações.
Mudanças na API
- Agora você pode transmitir
CreationExtraspara a funçãoby viewModels()da atividade (I6a3e6, b/217600303).
Versão 1.5.0-alpha02
9 de fevereiro de 2022
Lançamento de androidx.activity:activity:1.5.0-alpha02, androidx.activity:activity-compose:1.5.0-alpha02 e androidx.activity:activity-ktx:1.5.0-alpha02. A versão 1.5.0-alpha02 contém estas confirmações.
Novos recursos
- A
ComponentActivityagora implementa a interfaceOnPictureInPictureModeChangedProviderpara permitir que qualquer componente receba eventos de mudança no modo picture-in-picture (I9f567). - A
ComponentActivityagora implementa a interfaceOnMultiWindowModeChangedProviderpara permitir que qualquer componente receba eventos de mudança no modo de várias janelas (I62d91).
Versão 1.5.0-alpha01
26 de janeiro de 2022
Lançamento de androidx.activity:activity:1.5.0-alpha01, androidx.activity:activity-compose:1.5.0-alpha01 e androidx.activity:activity-ktx:1.5.0-alpha01. A versão 1.5.0-alpha01 contém estas confirmações.
Novos recursos
ComponentActivityagora se integra ao ViewModel CreationExtras, introduzido como parte do Lifecycle2.5.0-alpha01(Ie7e00, b/207012584).- Foi adicionada a
ComponentDialog, uma subclasse deDialogque inclui umOnBackPressedDispatcherque vai ser chamado se o botão "Voltar" do sistema for pressionado quando a caixa de diálogo estiver visível. É importante ressaltar que essa subclasse também define oViewTreeOnBackPressedDispatcherOwner, permitindo que as visualizações tenham uma maneira genérica de extrair o agente correto, independente de ele existir em umaComponentActivityou umComponentDialog(I8a1bc). ComponentActivityagora implementa a nova interfaceOnNewIntentProviderpara permitir que qualquer componente receba esses eventos (If1f8b).ComponentActivityagora implementa a nova interfaceOnConfigurationChangedProviderpara permitir que qualquer componente receba esses eventos (If623b).ComponentActivityagora implementa a nova interfaceOnTrimMemoryProviderpara permitir que qualquer componente receba esses eventos (Ia9295).
Mudanças na API
- O construtor sem parâmetro para
ActivityResultContracts.CreateDocumentfoi descontinuado e substituído por um novo construtor que usa um tipo MIME concreto (por exemplo,"image/png"), conforme exigido porIntent.ACTION_CREATE_DOCUMENT(I2bec6). - O
OnBackPressedDispatcherOwnerassociado a uma visualização agora pode ser extraído peloViewTreeOnBackPressedDispatcherOwner, em vez de depender da transmissão doContext(I74685).
Correções de bugs
- Corrigida uma falha ao acessar um
ViewModelpela primeira vez de um callbackregisterForActivityResult()ou dos callbacks de umLifecycleObserveradicionado como parte dainitde umaComponentActivity(Ife83f).
Versão 1.4.0
Versão 1.4.0
27 de outubro de 2021
Lançamento de androidx.activity:activity:1.4.0, androidx.activity:activity-compose:1.4.0 e androidx.activity:activity-ktx:1.4.0. A versão 1.4.0 contém estas confirmações.
Mudanças importantes desde a versão 1.3.0
- A
ComponentActivitydo AndroidX agora implementa a interfaceMenuHost. Isso possibilita que qualquer componente adicione itens de menu àActionBaracrescentando uma instância doMenuProviderà atividade. CadaMenuProviderpode ser adicionado com umLifecycle, que vai controlar automaticamente a visibilidade desses itens de menu com base no estado doLifecyclee processar a remoção doMenuProviderquando oLifecyclefor destruído. - A classe
ActivityResultContractfoi reescrita em Kotlin para garantir que os desenvolvedores que escrevem contratos personalizados em Kotlin possam definir a nulidade correta das classes de entrada e saída. - A classe
ActivityResultContractse os contratos dela foram reescritos em Kotlin para garantir a nulidade correta.
Versão 1.4.0-rc01
13 de outubro de 2021
Lançamento de androidx.activity:activity:1.4.0-rc01, androidx.activity:activity-compose:1.4.0-rc01 e androidx.activity:activity-ktx:1.4.0-rc01. A versão 1.4.0-rc01 contém estas confirmações.
Correções de bugs
- O
ActivityResultRegistrynão vai mais retornar um resultado para oActivityResultCallbackquando a chamadalaunchgerar umaException(If4f91, b/200845664).
Versão 1.4.0-beta01
29 de setembro de 2021
Lançamento de androidx.activity:activity:1.4.0-beta01, androidx.activity:activity-compose:1.4.0-beta01 e androidx.activity:activity-ktx:1.4.0-beta01. A versão 1.4.0-beta01 contém estas confirmações.
Mudanças na API
- Os tipos de
ActivityResultContracts.OpenMultipleDocumentseActivityResultContracts.GetMultipleContentsque geravam uma saída do tipoList<? extends Uri>ao usar o código da linguagem de programação Java foram corrigidos (If71de). - Constantes públicas nas classes
ActivityResultContracts.StartActivityForResult,ActivityResultContracts.StartIntentSenderForResulteActivityResultContracts.RequestMultiplePermissionsagora podem ser acessadas ao usar o Kotlin com os objetosCompanionpúblicos delas (aosp/1832555).
Atualizações da documentação
- As mensagens de descontinuação das APIs gerenciadas pelas APIs Activity Result, como
startActivityForResult,startIntentSenderForResult,onActivityResult,requestPermissionseonRequestPermissionsResult, agora oferecem mais detalhes (cce80f).
Versão 1.4.0-alpha02
15 de setembro de 2021
Lançamento de androidx.activity:activity:1.4.0-alpha02, androidx.activity:activity-compose:1.4.0-alpha02 e androidx.activity:activity-ktx:1.4.0-alpha02. A versão 1.4.0-alpha02 contém estas confirmações.
Novos recursos
- O artefato
activity-composeagora contém um erro lintLaunchDuringCompositionque impede a chamada do métodolaunchdoActivityResultLaunchercomo parte da composição, já que ela precisa ser livre de efeitos colaterais. Use as APIs para processar efeitos colaterais (7c2bbe, b/191347220).
Mudanças na API
- A classe
ActivityResultContractfoi reescrita em Kotlin para garantir que os desenvolvedores que escrevem contratos personalizados nessa linguagem possam definir a nulidade correta das classes de entrada e saída (I8a8f5). - A classe
ActivityResultContractse os contratos dela foram reescritos em Kotlin para garantir a nulidade correta (I69802).
Versão 1.4.0-alpha01
1º de setembro de 2021
Lançamento de androidx.activity:activity:1.4.0-alpha01, androidx.activity:activity-compose:1.4.0-alpha01 e androidx.activity:activity-ktx:1.4.0-alpha01. A versão 1.4.0-alpha01 contém estas confirmações.
Novos recursos
- O AndroidX
ComponentActivityagora implementa a interfaceMenuHost. Isso possibilita que qualquer componente adicione itens de menu àActionBaracrescentando uma instância doMenuProviderà atividade. CadaMenuProviderpode ser adicionado com umLifecycle, que vai controlar automaticamente a visibilidade desses itens de menu com base no estado doLifecyclee processar a remoção doMenuProviderquando oLifecyclefor destruído. (I3b608):
/**
* Using the addMenuProvider() API directly in your Activity
**/
class ExampleActivity : ComponentActivity(R.layout.activity_example) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Add menu items without overriding methods in the Activity
addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
})
}
}
/**
* Using the addMenuProvider() API in a Fragment
**/
class ExampleFragment : Fragment(R.layout.fragment_example) {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
// The usage of an interface lets you inject your own implementation
val menuHost: MenuHost = requireActivity()
// Add menu items without using the Fragment Menu APIs
// Note how we can tie the MenuProvider to the viewLifecycleOwner
// and an optional Lifecycle.State (here, RESUMED) to indicate when
// the menu should be visible
menuHost.addMenuProvider(object : MenuProvider {
override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
// Add menu items here
menuInflater.inflate(R.menu.example_menu, menu)
}
override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
// Handle the menu selection
return true
}
}, viewLifecycleOwner, Lifecycle.State.RESUMED)
}
Mudanças de comportamento
- O
ActivityResultRegistryagora vai gerar umaIllegalStateExceptionao tentar chamarlaunch()em umActivityResultLauncherque não tenha sido registrado ou cujo registro tenha sido cancelado (Ida75d, b/192567522).
Contribuição externa
- Agradecemos a dmitrilc (link em inglês) por corrigir um erro de digitação na documentação do
ActivityResult(#221).
Versão 1.3.1
Versão 1.3.1
4 de agosto de 2021
Lançamento de androidx.activity:activity:1.3.1, androidx.activity:activity-compose:1.3.1 e androidx.activity:activity-ktx:1.3.1. A versão 1.3.1 contém estas confirmações.
Atualizações de dependência
- A Activity agora depende do Kotlin
1.5.21. - A Activity Compose agora depende do Compose
1.0.1.
Versão 1.3.0
Versão 1.3.0
28 de julho de 2021
Lançamento de androidx.activity:activity:1.3.0, androidx.activity:activity-compose:1.3.0 e androidx.activity:activity-ktx:1.3.0. A versão 1.3.0 contém estas confirmações.
Mudanças importantes desde a versão 1.2.0
- Artefato do Activity Compose: o artefato
activity-composefornece o método de extensãosetContentpara hospedar a IU do Jetpack Compose em uma atividade. Ele também fornece wrappers específicos do Compose para interagir com as APIsComponentActivityao processar o botão "Voltar" do sistema e as APIs Activity Result. Consulte a documentação para ver mais detalhes. - Contrato CaptureVideo: o
ActivityResultContractdoCaptureVideosubstitui o contrato descontinuadoTakeVideoe retorna um booleano indicando que a ação foi realizada corretamente. Esse booleano funciona em vários apps de câmera. - Rastreamento de dicas de visualização Picture-In-Picture: os usuários de
activity-ktxagora podem usar o método de extensãotrackPipAnimationHintViewnaActivitypara recriar automaticamente osPictureInPictureParamscom a nova posição da visualização, já que ela muda de acordo com a janela.
Versão 1.3.0-rc02
14 de julho de 2021
Lançamento de androidx.activity:activity:1.3.0-rc02, androidx.activity:activity-compose:1.3.0-rc02 e androidx.activity:activity-ktx:1.3.0-rc02. A versão 1.3.0-rc02 contém estas confirmações.
Correções de bugs
- Os callbacks
ActivityResultRegistryagora são salvos e restaurados de maneira adequada para que não sejam duplicados no savedState (I97816, b/191893160).
Versão 1.3.0-rc01
1º de julho de 2021
Lançamento de androidx.activity:activity:1.3.0-rc01, androidx.activity:activity-compose:1.3.0-rc01 e androidx.activity:activity-ktx:1.3.0-rc01, sem mudanças desde a 1.3.0-beta02. A versão 1.3.0-rc01 contém estas confirmações.
Versão 1.3.0-beta02
16 de junho de 2021
Lançamento de androidx.activity:activity:1.3.0-beta02, androidx.activity:activity-compose:1.3.0-beta02 e androidx.activity:activity-ktx:1.3.0-beta02. A versão 1.3.0-beta02 contém estas confirmações.
Atualização de activity-compose para depender do Compose 1.0.0-beta09. O androidx.compose.ui:ui-test-junit4 agora tem uma dependência de tempo de compilação no artefato activity-compose.
Versão 1.3.0-beta01
2 de junho de 2021
Lançamento de androidx.activity:activity:1.3.0-beta01, androidx.activity:activity-compose:1.3.0-beta01 e androidx.activity:activity-ktx:1.3.0-beta01. A versão 1.3.0-beta01 contém estas confirmações.
Mudanças na API
- O método
@Composable registerForActivityResult(), já descontinuado, foi removido. Use o métodorememberLauncherForActivityResult()(Ic39d3).
Versão 1.3.0-alpha08
18 de maio de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha08, androidx.activity:activity-compose:1.3.0-alpha08 e androidx.activity:activity-ktx:1.3.0-alpha08. A versão 1.3.0-alpha08 contém estas confirmações.
Novos recursos
- O novo
ActivityResultContractCaptureVideoretorna para oActivityResultCallbackum booleano que indica se o vídeo foi salvo no URI fornecido. Isso substitui o contratoTakeVideodescontinuado, já que os apps de câmera muito raramente oferecem suporte ao retorno de um bitmap de miniaturas, o que torna o resultado inútil (Ie21f2, b/185938070). - A nova API
Activity#setPipAnimationHintViewfoi adicionada para atualizar a dica de retângulo de origem do PipParams sempre que a visualização se move (I9063d).
Mudanças na API
- A função
rememberLauncherForActivityResultagora retorna uma tela de início que descontinua o uso da funçãounregister(). O registro e o cancelamento do registro da tela de início é processado automaticamente porrememberLauncherForActivityResult(I2443e).
Compatibilidade do Compose
androidx.activity:activity-compose:1.3.0-alpha08só é compatível com a versão1.0.0-beta07do Compose e mais recentes.
Versão 1.3.0-alpha07
21 de abril de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha07, androidx.activity:activity-compose:1.3.0-alpha07 e androidx.activity:activity-ktx:1.3.0-alpha07. A versão 1.3.0-alpha07 contém estas confirmações.
Correções de bugs
rememberLauncherForActivityResultagora retorna uma referência estável para a mesma instância deActivityResultLauncher, mesmo que o contrato mude devido a recomposições (Id2d6d).- O uso de versões instáveis dos Fragments mais recentes que a
1.3.0vai deixar de gerar um erro lint falso positivo que instrui você a usar1.3.0(aosp/1670206, b/184847092).
Versão 1.3.0-alpha06
7 de abril de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha06, androidx.activity:activity-compose:1.3.0-alpha06 e androidx.activity:activity-ktx:1.3.0-alpha06. A versão 1.3.0-alpha06 contém estas confirmações.
Mudanças na API
- A API
registerForActivityResult()foi renomeada comorememberLauncherForActivityResult()para indicar melhor que oActivityResultLauncherretornado é um objeto gerenciado que é lembrado para você. A tentativa de chamarunregisterdoActivityResultLauncherretornado agora emitirá um erro (I2bb6d). LocalOnBackPressedDispatcherOwner.currenteLocalActivityResultRegistryOwner.currentagora retornam um valor anulável para determinar melhor se ele está disponível na composição atual. As APIs que exigem essas APIs, comoBackHandlererememberLauncherForActivityResult(), respectivamente, passarão a gerar um erro mais descritivo se o proprietário não for encontrado.NavHostagora funciona mesmo quando umOnBackPressedDispatcherOwnernão é encontrado, como ao visualizar oNavHost(I7d8b4).
Correções de bugs
- O
BackHandleragora vai interceptar corretamente os pressionamentos do botão "Voltar" caso a atividade sejaSTOPPED(encerrada), depoisSTARTED(iniciada) novamente e outros callbacks forem adicionados com um LifecycleOwner (I71de6, b/182284739). - O uso da extensão do método
launch()com umActivityResultContractpersonalizado que tem uma entradaUnitnão vai mais causar umaNullPointerException(I76282 .b/183837954).
Versão 1.3.0-alpha05
24 de março de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha05, androidx.activity:activity-compose:1.3.0-alpha05 e androidx.activity:activity-ktx:1.3.0-alpha05. A versão 1.3.0-alpha05 contém estas confirmações.
Correções de bugs
- Na Activity 1.2.2 e mais recentes: foi corrigido um problema na verificação de lint
InvalidFragmentVersionForActivityResultque gerava um falso positivo ao usar o Fragment 1.3.1 ou mais recente (I54da1, b/182388985). - A partir da Activity 1.2.2: a
ComponentActivityagora evita umaClassNotFoundExceptionao iniciar umaIntentde umActivityResultContractque estava retido como um extra em outraIntent(Ieff05, b/182906230).
Atualizações de dependência
- A partir da Activity 1.2.2: a Activity agora depende do Lifecycle
2.3.1.
Versão 1.3.0-alpha04
10 de março de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha04, androidx.activity:activity-compose:1.3.0-alpha04 e androidx.activity:activity-ktx:1.3.0-alpha04. A versão 1.3.0-alpha04 contém estas confirmações.
Correções de bugs
- Na Activity
1.2.1e mais recentes:RequestMultiplePermissionsagora sempre retorna os resultados de todas as permissões solicitadas, em vez de somente permissões que não foram concedidas anteriormente (I50bc3, b/180884668). - Na Activity
1.2.1e mais recentes:ActivityResultRegistryagora garante que as solicitaçõeslaunch()em andamento retornem os resultados mesmo que vocêunregister()(cancele o registro) e depois asregister()(registre) novamente com a mesma chave (I9ef34, b/181267562). - A Activity Compose não adiciona mais dependências de teste ao caminho de classe do tempo de execução (Ifd8b3).
- Foi corrigido um problema com o
BackHandler, em que a lambdaonBackdefinida anteriormente ainda estava sendo usada após a recomposição (8eb5eb).
Versão 1.3.0-alpha03
24 de fevereiro de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha03, androidx.activity:activity-compose:1.3.0-alpha03 e androidx.activity:activity-ktx:1.3.0-alpha03. A versão 1.3.0-alpha03 contém estas confirmações.
Novos recursos
- Existe agora uma função
registerForActivityResultde composição que tem como objetivo receber resultados de atividades nos elementos que podem ser compostos (Ia7851, b/172690553).
Mudanças na API
LocalOnBackPressedDispatcherOwneragora tem uma funçãoprovidesque pode ser usada comCompositionLocalProvider, substituindo a APIasProvidableCompositionLocal()(I45d24).
Versão 1.3.0-alpha02
10 de fevereiro de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha02, androidx.activity:activity-compose:1.3.0-alpha02 e androidx.activity:activity-ktx:1.3.0-alpha02. A versão 1.3.0-alpha02 contém estas confirmações.
Correções de bugs
- Correção de um problema no Activity Compose
1.3.0-alpha01que causava uma exceçãoNoSuchMethodError: No static method setContentao usar o Compose1.0.0-alpha12. Todos os usuários do Compose precisam usar1.3.0-alpha02ou mais recente como dependência (b/179911234).
Mudanças na API
- A API
BackHandlerpode ser usada para permitir que um elemento combinável possa interceptar o botão "Voltar" do sistema (I58ed5, b/172154006).
Versão 1.3.0-alpha01
10 de fevereiro de 2021
Lançamento de androidx.activity:activity:1.3.0-alpha01, androidx.activity:activity-compose:1.3.0-alpha01 e androidx.activity:activity-ktx:1.3.0-alpha01. A versão 1.3.0-alpha01 contém estas confirmações.
Novos recursos
- O novo artefato
activity-composefornece auxiliares específicos do Jetpack Compose para APIs específicasandroidx.activity.ComponentActivity.setContentfoi movido deandroidx.compose.ui.platform.setContentparaandroidx.activity.compose.setContent(Icf416).
Problemas conhecidos
- O uso do Activity Compose
1.3.0-alpha01e bibliotecas que dependem dele, comoandroidx.compose.ui:ui-test-junit4:1.0.0-alpha12, vai resultar em uma exceçãoNoSuchMethodError: No static method setContent(b/179911234).
Versão 1.2.4
Versão 1.2.4
21 de julho de 2021
Lançamento de androidx.activity:activity:1.2.4 e androidx.activity:activity-ktx:1.2.4. A versão 1.2.4 contém estas confirmações.
Correções de bugs
- Na Activity
1.3.0-rc02e mais recentes: os callbacks ActivityResultRegistry agora são salvos e restaurados corretamente para que não sejam duplicados no savedState (I97816, b/191893160).
Versão 1.2.3
Versão 1.2.3
5 de maio de 2021
Lançamento de androidx.activity:activity:1.2.3 e androidx.activity:activity-ktx:1.2.3. A versão 1.2.3 contém estas confirmações.
Correções de bugs
- O uso da extensão do método
launch()com umActivityResultContractpersonalizado que tem uma entradaUnitnão vai mais causar umaNullPointerException(I76282 .b/183837954). - Foi corrigido um erro de lint falso positivo que dizia para usar a versão
1.3.0do Fragment ao usar um build de snapshot, Alfa, Beta ou RC de uma versão mais recente de Fragments (f4a57e, b/184847092).
Versão 1.2.2
Versão 1.2.2
24 de março de 2021
Lançamento de androidx.activity:activity:1.2.2 e androidx.activity:activity-ktx:1.2.2. A versão 1.2.2 contém estas confirmações.
Correções de bugs
- Correção de um problema na verificação de lint
InvalidFragmentVersionForActivityResultque gerava um falso positivo ao usar o Fragment 1.3.1 ou mais recente (I54da1, b/182388985). - A
ComponentActivityagora evita umaClassNotFoundExceptionao iniciar umaIntentde umActivityResultContractque era mantido como um extra em outraIntent(Ieff05, b/182906230).
Atualizações de dependência
- A Activity agora depende do Lifecycle
2.3.1.
Versão 1.2.1
Versão 1.2.1
10 de março de 2021
Lançamento de androidx.activity:activity:1.2.1 e androidx.activity:activity-ktx:1.2.1. A versão 1.2.1 contém estas confirmações.
Correções de bugs
RequestMultiplePermissionsagora sempre retorna resultados para todas as permissões solicitadas, e não somente permissões que não foram concedidas anteriormente (I50bc3, b/180884668).- O callback
ActivityResultRegistryagora garante que as solicitaçõeslaunch()em andamento retornem os resultados mesmo que vocêunregister()(cancele o registro) e depoisregister()(registre) novamente com a mesma chave (I9ef34, b/181267562).
Versão 1.2.0
Versão 1.2.0
10 de fevereiro de 2021
Lançamento de androidx.activity:activity:1.2.0 e androidx.activity:activity-ktx:1.2.0. A versão 1.2.0 contém estas confirmações.
Principais mudanças desde a versão 1.1.0
- APIs Activity Result: o
ComponentActivityagora oferece umActivityResultRegistryque permite processarstartActivityForResult()+onActivityResult()e fluxos derequestPermissions()+onRequestPermissionsResult()sem substituir métodos na Activity ou no Fragment, traz maior segurança de tipo comActivityResultContracte fornece hooks para testar esses fluxos. Veja a atualização de Como ver um resultado de uma atividade.
ContextAware:ComponentActivityagora implementaContextAware, permitindo que você adicione uma ou mais instâncias deOnContextAvailableListenerque recebem um callback antes daActivity.onCreate()base.- Uma extensão Kotlin de suspensão
withContextAvailable()permite que você execute um bloco que não é de suspensão quando o contexto fica disponível e retorna um resultado - Essa API é usada por
FragmentActivityno Fragment 1.3.0 para restaurar o estado doFragmentManager. Todos os listeners adicionados às subclasses daFragmentActivityserão executados depois desse listener. - Essa API é usada por
AppCompatActivityno AppCompat 1.3.0-alpha02 ou mais recentes. Todos os listeners adicionados às subclasses daAppCompatActivityserão executados depois desse listener.
- Uma extensão Kotlin de suspensão
Suporte a
ViewTree: aComponentActivityagora oferece suporte às APIsViewTreeLifecycleOwner.get(View),ViewTreeViewModelStoreOwner.get(View)eViewTreeSavedStateRegistryOwneradicionadas no Lifecycle2.3.0e SavedState1.1.0para retornar a atividade como oLifecycleOwner,ViewModelStoreOwnereSavedStateRegistryOwnerpara qualquer visualização adicionada diretamente àComponentActivity.
- Backport de reportFullyDrawn(): o método
ActivitydereportFullyDrawn()passou por um backport naComponentActivitypara funcionar em todos os níveis de API, corrigindo uma falha na API 19 e adicionando o rastreamento desse método para todos os níveis da API.
Versão 1.2.0-rc01
16 de dezembro de 2020
Lançamento de androidx.activity:activity:1.2.0-rc01 e androidx.activity:activity-ktx:1.2.0-rc01. A versão 1.2.0-rc01 contém estas confirmações.
Correções de bugs
- O
ActivityResultRegistryagora restaura sempre o estado exato em que foi salvo (Idd56b). - Adição do rastreamento ao
ComponentActivity.reportFullyDrawn(Ic7632).
Contribuição externa
ComponentActivityagora substitui o métodoreportFullyDrawn(), permitindo que ele seja chamado em todos os níveis da API e corrigindo uma falha ao chamar esse método sem a permissão adequada do sistema nos dispositivos com a API 19. Agradecemos a Simon Schiller (b/163239764, #103).
Versão 1.2.0-beta02
2 de dezembro de 2020
Lançamento de androidx.activity:activity:1.2.0-beta02 e androidx.activity:activity-ktx:1.2.0-beta02. A versão 1.2.0-beta02 contém estas confirmações.
Correções de bugs
- Foi corrigido um problema em que a API Activity Result
não esperava o Lifecycle entrar no estado
STARTEDantes de enviar resultados quando ele estava registrado com umLifecycle(I109ea).
Contribuição externa
- A documentação de
launch()foi atualizada para deixar claro que ele pode gerar umaActivityNotFoundException. Agradecemos a Michał Zieliński (aosp/1493580).
Versão 1.2.0-beta01
1º de outubro de 2020
Lançamento de androidx.activity:activity:1.2.0-beta01 e androidx.activity:activity-ktx:1.2.0-beta01. A versão 1.2.0-beta01 contém estas confirmações.
Correções de bugs
O
ActivityResultRegistryagora gera números inteiros aleatoriamente até encontrar um que não esteja alocado para usar como um código de solicitaçãoregister(), evitando o possível estouro de números inteiros causado por incrementação de códigos de solicitação (b/168779518).Os observadores
Lifecyclesão removidos adequadamente ao chamarunregister()em umActivityResultLauncher(b/165608393).
Mudanças de comportamento
- O
ActivityResultRegistryagora gera umaIllegalStateExceptionao tentar chamarregister()com umLifecycleOwnercujoLifecyclejá atingiu o statusSTARTED(b/165435866).
Documentação atualizada
- A documentação de
ContextAwareestá vinculada aoLifecycleOwnerpara destacar callbacks deLifecyclecomo o local apropriado para eventos de criação e destruição (aosp/1414152).
Versão 1.2.0-alpha08
19 de agosto de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha08 e androidx.activity:activity-ktx:1.2.0-alpha08. A versão 1.2.0-alpha08 contém estas confirmações.
Novos recursos
ComponentActivityagora implementaContextAware, permitindo que você adicione uma ou mais instâncias deOnContextAvailableListener, que recebem um callback antes do métodoActivity.onCreate()base (b/161390636).- Uma extensão Kotlin de suspensão
withContextAvailable()permite que você execute um bloco que não é de suspensão quando o contexto fica disponível e retorna um resultado (I8290c). - Essa API é usada por
FragmentActivityno Fragment 1.3.0-alpha08 para restaurar o estado doFragmentManager. Todos os listeners adicionados às subclasses daFragmentActivityserão executados depois desse listener (I513da). - Essa API é usada pela
AppCompatActivityno AppCompat 1.3.0-alpha02. Todos os listeners adicionados às subclasses daAppCompatActivityserão executados depois desse listener (I513da).
- Uma extensão Kotlin de suspensão
Correções de bugs
- Foi corrigido um problema com a verificação de lint
ActivityResultFragmentVersionDetectorque fazia com que ela falhasse ao usar o Lint 27.1.0 ou mais recente (b/162155191)
Versão 1.2.0-alpha07
22 de julho de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha07 e androidx.activity:activity-ktx:1.2.0-alpha07. A versão 1.2.0-alpha07 contém estas confirmações.
Novos recursos
- Foi incluída uma nova verificação de lint
InvalidFragmentVersionForActivityResultque verifica se você está usando o Fragment1.3.0-alpha07ao usar a API Activity Result. Isso evita falhas durante a execução devido a problemas de "código de solicitação inválido" e solicitações de permissão não funcionais causadas pelo uso de versões mais antigas de Fragments (b/152554847).
Contribuição externa
- Correção de um
ArrayIndexOutOfBoundsExceptionao analisar os resultados para o contrato de Activity ResultRequestPermission(I8f9e3, b/161057605).
Versão 1.2.0-alpha06
10 de junho de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha06 e androidx.activity:activity-ktx:1.2.0-alpha06. A versão 1.2.0-alpha06 contém estas confirmações.
Novos recursos
- Agora é possível desestruturar a classe
ActivityResultno Kotlin para acessarrequestCodeeintentdiretamente (b/157212935). ActivityResultLauncheragora permite que você receba oActivityResultContractque foi usado para registrar a tela de início (b/156875743).
Mudanças na API
- Alteração interruptiva: o método
invoke()emActivityResultRegistryfoi renomeado comoonLaunch()(b/157496491). - O contrato
OpenMultipleDocumentsagora retorna uma lista vazia em vez denullpara o callback registrado caso nenhum resultado seja retornado (b/157348014).
Versão 1.2.0-alpha05
20 de maio de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha05 e androidx.activity:activity-ktx:1.2.0-alpha05. A versão 1.2.0-alpha05 contém estas confirmações.
Novos recursos
- Foi adicionado suporte à classe
ViewTreeViewModelStoreOwnerdo Lifecycle2.3.0-alpha03e àViewTreeSavedStateRegistryOwnerdo SavedState1.1.0-alpha01ao usar umaViewem umaComponentActivity(aosp/1297993, aosp/1300264).
Mudanças na API
- O contrato
TakePictureagora retorna umbooleanindicando sucesso, em vez de umBitmapem miniatura, já que raramente tinha suporte em apps de câmera ao gravar a imagem noUrifornecido (b/154302879). - As extensões
invoke()naActivityResultLauncherforam removidas em favor do uso explícito delaunch()para indicar melhor que essas são operações assíncronas. As extensões Kotlin paralaunchforam adicionadas ao pacoteandroidx.activity.resultparaActivityResultLauncher<Void>eActivityResultLauncher<Unit>, o que elimina a necessidade de transmitirnullouUnit, respectivamente, espelhando esse comportamento das extensõesinvoke()anteriores (aosp/1304674, aosp/1304675). - Os métodos
IntentSenderRequest.BuilderparasetFlagsMask()esetFlagsValues()foram combinados em um único métodosetFlags()(aosp/1302111).
Correções de bugs
- Ao registrar uma interface
ActivityResultCallbackcom umLifecycleOwner, foi corrigido um problema em que o callback era acionado antes de chegar ao estadoSTARTED(aosp/1309744).
Mudanças de comportamento
- A
ActivityResultRegistryagora gera códigos de solicitação com base em0xFFFFem vez de0, impedindo a sobreposição ao usarstartActivityForResult()ourequestPermissions()em uma atividade (aosp/1302324).
Versão 1.2.0-alpha04
29 de abril de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha04 e androidx.activity:activity-ktx:1.2.0-alpha04. A versão 1.2.0-alpha04 contém estas confirmações.
Novos recursos
- Foi adicionado um contrato que pode chamar startIntentSenderForResult para as APIs ActivityResult (b/153007517).
Mudanças na API
- O método
prepareCall()foi renomeado comoregisterForActivityResult(), tanto emComponentActivitycomo no fragmento1.3.0-alpha04(aosp/1278717). - Os contratos
GetContents,OpenDocumentseRequestPermissionsforam renomeados comoGetMultipleContents,OpenMultipleDocumentseRequestMultiplePermissions, respectivamente (aosp/1280161). ComponentActivityagora implementa a interfaceActivityResultRegisteryOwner(aosp/1290888).- As APIs
startActivityForResult()/onActivityResult()eonRequestPermissionsResult()naComponentActivityforam descontinuadas. Use as APIs Activity Result (b/154751887).
Correções de bugs
- Ao usar os contratos
GetMultipleContentseOpenMultipleDocumentse selecionar um único item, ele vai ser retornado corretamente ao callback (b/152941153, link em inglês).
Versão 1.2.0-alpha03
1º de abril de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha03 e androidx.activity:activity-ktx:1.2.0-alpha03. A versão 1.2.0-alpha03 contém estas confirmações.
Novos recursos
- Adição dos contratos
TakeVideo,PickContact,GetContent,GetContents,OpenDocument,OpenDocuments,OpenDocumentTreeeCreateDocumentao conjunto de contratos pré-criados fornecidos porActivityResultContracts(aosp/1262482, aosp/1266916, aosp/1268960). - As APIs Activity Result agora oferecem suporte à inicialização de uma atividade de resultado com
ActivityOptionsCompatopcionais (b/151860054, link em inglês).
Mudanças na API
- O contrato
TakePictureusa uma entradaUripara onde a imagem será armazenada. O contrato anterior que não aceita entradas foi renomeado comoTakePicturePreview(aosp/1262482). - O método
registerActivityResultCallback()emActivityResultRegistryfoi renomeado comoregister()(aosp/1267621). - O método
dispose()naActivityResultLauncherfoi renomeado comounregister(), e ounregisterResultCallback()naActivityResultRegistryfoi removido (aosp/1267621). - O método
createIntent()deActivityResultContactagora usa umContextalém da entrada para possibilitar a criação de intents explícitas (aosp/1238800). - Um
ActivityResultContractagora pode modificargetSynchronousResult()para entregar um resultado sem chamarstartActivityForResult. Isso é usado pelos contratosRequestPermissioneRequestPermissionspara mostrar corretamente o status "concedido" se as permissões solicitadas já tiverem sido concedidas (b/151110799). - O contrato
Dialanteriormente disponível foi removido porqueIntentnão pode ser usado comstartActivityForResult()(aosp/1266916). - Muitas das APIs Activity Result que não podem ser estendidas agora são
final. Isso incluigetActivityResultRegistry(), os métodosprepareCall(), todos os métodos deActivityResultRegistry, excetoinvoke(), e vários contratos padrão que não têm suporte a extras opcionais (b/152439361).
Correções de bugs
- Foi corrigida uma
NullPointerExceptionnoActivityResultRegistryao tentar entregar resultados a um callback que ainda não foi registrado novamente após uma mudança de configuração. OActivityResultRegistryagora mantém esses resultados pendentes e os entrega quando o callback é registrado novamente (b/152137004).
Versão 1.2.0-alpha02
18 de março de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha02 e androidx.activity:activity-ktx:1.2.0-alpha02. A versão 1.2.0-alpha02 contém estas confirmações.
Novos recursos
- ActivityResultRegistry: o
ComponentActivityagora oferece umActivityResultRegistryque permite processarstartActivityForResult()+onActivityResult()e fluxos derequestPermissions()+onRequestPermissionsResult()sem substituir métodos na Activity ou no Fragment, traz maior segurança do tipo comActivityResultContracte fornece hooks para testar esses fluxos. Veja a atualização de Como ver um resultado de uma atividade (b/125158199).
Versão 1.2.0-alpha01
4 de março de 2020
Lançamento de androidx.activity:activity:1.2.0-alpha01 e androidx.activity:activity-ktx:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.
Novos recursos
- Foi incluído suporte à API
ViewTreeLifecycleOwner.get(View)adicionada no Lifecycle2.3.0-alpha01. Ela vai retornar a atividade como oLifecycleOwnerpara qualquer visualização adicionada diretamente à atividade (aosp/1182955).
Correções de bugs
- Foi corrigida uma regressão introduzida na Activity
1.1.0quando executada em versões mais antigas da plataforma. O métodoonBackPressed()causava umaIllegalStateExceptiondevido a um bug noandroid.app.FragmentManager(b/146290338).
Versão 1.1.0
Versão 1.1.0
22 de janeiro de 2020
Lançamento de androidx.activity:activity:1.1.0. A versão 1.1.0 contém estas confirmações.
Mudanças importantes desde a versão 1.0.0
- Integração do ciclo de vida ViewModel SavedState: a
SavedStateViewModelFactoryagora é a fábrica padrão empregada ao usar oby viewModels(), o construtorViewModelProviderouViewModelProviders.of()com umaComponentActivityou as subclasses dela.
Versão 1.1.0-rc03
4 de dezembro de 2019
Lançamento de androidx.activity:activity:1.1.0-rc03 e androidx.activity:activity-ktx:1.1.0-rc03. A versão 1.1.0-rc03 contém estas confirmações.
Mudanças na dependência
- Agora, a atividade depende do Lifecycle
2.2.0-rc03e do Lifecycle ViewModel SavedState1.0.0-rc03.
Versão 1.1.0-rc02
7 de novembro de 2019
Lançamento de androidx.activity:activity:1.1.0-rc02 e androidx.activity:activity-ktx:1.1.0-rc02. A versão 1.1.0-rc02 contém estas confirmações.
Mudanças na dependência
- A atividade agora depende do ciclo de vida
2.2.0-rc02.
Versão 1.1.0-rc01
23 de outubro de 2019
Lançamento de androidx.activity:activity:1.1.0-rc01 e androidx.activity:activity-ktx:1.1.0-rc01, sem mudanças desde 1.1.0-beta01. Versão 1.1.0-rc01 contém estas confirmações.
Versão 1.1.0-beta01
9 de outubro de 2019
Lançamento de androidx.activity:activity:1.1.0-beta01 e androidx.activity:activity-ktx:1.1.0-beta01. Versão 1.1.0-beta01 contém estas confirmações.
Mudanças na dependência
- A atividade agora depende do SavedState 1.0.0 estável.
Versão 1.1.0-alpha03
5 de setembro de 2019
Lançamento de androidx.activity:activity:1.1.0-alpha03 e androidx.activity:activity-ktx:1.1.0-alpha03. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
- A atividade depende do Core 1.1.0 estável.
Correções de bugs
- A atividade agora depende do Lifecycle
2.2.0-alpha04.
Versão 1.1.0-alpha02
7 de agosto de 2019
Lançamento de androidx.activity:activity:1.1.0-alpha02 e androidx.activity:activity-ktx:1.1.0-alpha02. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
SavedStateViewModelFactoryagora é a fábrica padrão empregada ao usarby viewModels(), o construtorViewModelProviderouViewModelProviders.of()comComponentActivity(b/135716331).
Versão 1.1.0-alpha01
2 de julho de 2019
Lançamento de androidx.activity:activity:1.1.0-alpha01 e androidx.activity:activity-ktx:1.1.0-alpha01. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
activityagora depende do Lifecycle2.2.0-alpha02(aosp/1007817).- O
activity-ktxadicionou uma dependência nolifecycle-runtime-ktx. Ele não precisa mais ser adicionado explicitamente às suas dependências ao usar oactivity-ktxou bibliotecas que dependem doactivity-ktx, comofragment-ktx(aosp/987162).
Versão 1.0.0
Versão 1.0.0
5 de setembro de 2019
Lançamento de androidx.activity:activity:1.0.0 e androidx.activity:activity-ktx:1.0.0. As confirmações incluídas nessa versão podem ser encontradas neste link.
Principais recursos do 1.0.0
- ComponentActivity:
ComponentActivityserve como a nova classe base paraFragmentActivityno Fragment1.1.0e, por extensão,AppCompatActivityem AppCompat1.1.0. - activity-ktx: o módulo
activity-ktxinclui uma extensão de propriedadeby viewModelsdo Kotlin para acessar ViewModels. Esse módulo é incluído automaticamente quando você adicionafragment-ktxdo Fragment1.1.0. - OnBackPressedDispatcher: como uma alternativa composta à modificação de
onBackPressed(), agora você pode registrar umOnBackPressedCallbackde qualquerLifecycleOwner(como um fragmento) para interceptar eventos do botão "Voltar" do sistema. Um lambda com versão de receptoraddCallbackfoi adicionado aactivity-ktx. Consulte a página Oferecer navegação de retorno personalizada para mais detalhes. - Descontinuação de onRetainCustomNonConfigurationInstance: o método
onRetainCustomNonConfigurationInstance()e as APIsgetLastCustomNonConfigurationInstance()relacionadas foram descontinuados. É altamente recomendável usar ViewModels para armazenar o estado de não configuração porque eles oferecem uma solução composta adequada para qualquerViewModelStoreOwnerque torne clara a propriedade dos objetos retidos e forneça um callback deonCleared()para limpar recursos quando a atividade é finalmente destruída.
Versão 1.0.0-rc01
2 de julho de 2019
Lançamento de androidx.activity:activity:1.0.0-rc01 e androidx.activity:activity-ktx:1.0.0-rc01, sem mudanças desde 1.0.0-beta01. As confirmações incluídas nessa versão podem ser encontradas neste link.
Versão 1.0.0-beta01
5 de junho de 2019
Lançamento de androidx.activity::activity:1.0.0-beta01 e androidx.activity:activity-ktx:1.0.0-beta01, sem mudanças desde 1.0.0-alpha08. As confirmações incluídas nessa versão podem ser encontradas neste link.
Versão 1.0.0-alpha08
7 de maio de 2019
Lançamento de androidx.activity:activity:1.0.0-alpha08 e androidx.activity:activity-ktx:1.0.0-alpha08. As confirmações incluídas nessa versão podem ser encontradas neste link.
Mudanças na API
- Alteração interruptiva: os métodos
addOnBackPressedCallbackeremoveOnBackPressedCallbackdescontinuados naComponentActivityforam removidos (aosp/953857). - Os métodos
setEnabled()eisEnabled()deOnBackPressedCallbackagora são finais (b/131416833). - O método
remove()deOnBackPressedCallbackagora é final (aosp/952720). - A
OnBackPressedDispatcheragora tem construtores públicos, permitindo construir as próprias instâncias para testes etc. (aosp/953431). - O
onBackPressed()paraComponentActivityagora é explicitamente marcado como@MainThread(aosp/952721).
Correções de bugs
- Foi corrigida uma
ConcurrentModificationExceptionque ocorria ao chamarremove()de dentro do métodohandleOnBackPressed()de umOnBackPressedCalbackque foi adicionado com umLifecycleOwner(b/131765095).
Versão 1.0.0-alpha07
25 de abril de 2019
Lançamento de androidx.activity:activity:1.0.0-alpha07 e androidx.activity:activity-ktx:1.0.0-alpha07. As confirmações incluídas nessa versão podem ser encontradas neste link.
Mudanças na API
Essa versão faz mudanças significativas no processamento de onBackPressed(). Consulte a documentação atualizada sobre o retorno personalizado para saber mais detalhes.
- Os métodos para
OnBackPressedCallbackeOnBackPressedDispatcherforam marcados como@MainThread(aosp/943813). - O método
handleOnBackPressed()não retorna mais umboolean. Agora,OnBackPressedCallbacké uma classe abstrata que pode ser ativada ou desativada. O métodohandleOnBackPressed()vai ser chamado apenas quando o novo métodoisEnabled()retornar um valor "true" (verdadeiro), e é necessário lidar com o botão "Voltar" (aosp/944518). - Os métodos
addCallbackdeOnBackPressedDispatchernão retornam mais uma instânciaCancellable. A classeOnBackPressedCallbackagora contém um métodoremove()que preenche essa funcionalidade, permitindo que você chameremove()durante ohandleOnBackPressed()(aosp/944519) (aosp/946316). activity-ktxagora contém um callback com escopo no receptor paraaddCallbackque aceita um lambda. Esse lambda implementahandleOnBackPressed()e tem acesso aisEnablede aremove()(aosp/944520).
Versão 1.0.0-alpha06
3 de abril de 2019
Lançamento de androidx.activity:activity:1.0.0-alpha06 e androidx.activity:activity-ktx:1.0.0-alpha06. As confirmações incluídas nessa versão podem ser encontradas neste link.
Mudanças na API
- AppCompatActivity agora contém um segundo construtor que usa um
@LayoutRes int, que substitui o comportamento anterior de anotar sua classe AppCompatActivity com@ContentView. Essa abordagem funciona nos módulos do app e da biblioteca (b/128352521). - As APIs relacionadas à classe
OnBackPressedCallbackna ComponentActivity foram descontinuadas e substituídas pela novaOnBackPressedDispatcher, que pode ser extraída comgetOnBackPressedDispatcher()(aosp/922523). - Os métodos para adicionar um novo
OnBackPressedCallbackaoOnBackPressedDispatcheragora retornam um objetoCancellable, permitindo a remoção do callback sem exigir uma referência explícita aoOnBackPressedDispatcher(aosp/922523). - Adicionar um
OnBackPressedCallbackcom umLifecycleOwnerassociado agora resulta na adição e remoção deOnBackPressedCallbackquando o ciclo de vida é iniciado e interrompido, respectivamente (aosp/922523, link em inglês).
Versão 1.0.0-alpha05
13 de março de 2019
Lançamento de androidx.activity:activity:1.0.0-alpha05 e androidx.activity:activity-ktx:1.0.0-alpha05. A lista completa de confirmações incluídas nessa versão pode ser encontrada neste link.
Novos recursos
- As pesquisas da anotação
@ContentViewagora são armazenadas em cache (b/123709449).
Versão 1.0.0-alpha04
30 de janeiro de 2019
Lançamento de androidx.activity:activity 1.0.0-alpha04 e androidx.activity:activity-ktx 1.0.0-alpha04.
Novos recursos
- Foi adicionado suporte à anotação da classe
@ContentView, que permite indicar qual arquivo XML de layout vai ser inflado como alternativa ao uso desetContentView()(aosp/837619).
Mudanças na API
- Incluída uma observação de que
getViewModelStore()não precisa ser modificado e que será considerado final em uma versão futura. Registre uma solicitação de recurso se você estiver substituindo esse método atualmente (aosp/837619).
Correções de bugs
- O módulo
activityagora depende da versão 2.1.0-alpha02 de ViewModel para corresponder à dependência do móduloactivity-ktx.
Versão 1.0.0-alpha03
17 de dezembro de 2018
Lançamento de androidx.activity 1.0.0-alpha03.
Novos recursos
- ComponentActivity agora implementa
BundleSavedStateRegistryOwnere depende da recém-lançada biblioteca SavedState [aosp/815133]. - ComponentActivity agora soluciona um bug do framework Android que fazia o InputMethodManager vazar a última visualização focada [b/37122102].
Versão 1.0.0-alpha02
3 de dezembro de 2018
Mudanças na API
- Foi incluída uma observação de que o
getLifecycle()não precisa ser substituído e será consideradofinalem uma versão futura. Registre uma solicitação de recurso se você estiver substituindo esse método (aosp/815834).
Versão 1.0.0-alpha01
5 de novembro de 2018
androidx.activity 1.0.0-alpha01 apresenta
ComponentActivity, uma nova classe base das FragmentActivity e AppCompatActivity
existentes.
Novos recursos
- Agora você pode registrar a classe
OnBackPressedCallbackviaaddOnBackPressedCallbackpara receber callbacksonBackPressed()sem ter que substituir o método na atividade. - Incluído um novo delegado da propriedade Kotlin
by viewModels()para recuperarViewModels de umaComponentActivity. - Eventos de entrada pendentes, como cliques, agora são cancelados em
onStop().
Mudanças na API
- A implementação de
LifecycleOwnereViewModelStoreOwnerfoi movida deFragmentActivityparaComponentActivity. - O uso de
onRetainCustomNonConfigurationInstancefoi descontinuado. Use umViewModelpara armazenar objetos que precisam sobreviver às mudanças de configuração.