Participe do evento ⁠#Android11: apresentação de lançamento da versão Beta no dia 3 de junho.

Atividade

Atualização mais recente Versão estável atual Próximo candidato a lançamento Versão Beta Versão Alfa
29 de abril de 2020 1.1.0 - - 1.2.0-alpha04

Declarar dependências

Para adicionar uma dependência ao Activity, 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 no arquivo build.gradle para seu app ou módulo:

    dependencies {
        def activity_version = "1.1.0"

        // Java language implementation
        implementation "androidx.activity:activity:$activity_version"
        // Kotlin
        implementation "androidx.activity:activity-ktx:$activity_version"
    }
    

Para ver 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 existentes (link em inglês) nesta biblioteca antes de criar um novo. Adicione seu voto a um problema existente clicando no botão de estrela.

Criar novo problema (link em inglês)

Consulte a documentação do Issue Tracker (em inglês) para saber mais.

Versão 1.2.0

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 essas confirmações (link em inglês).

Novos recursos

  • Adição de um contrato que pode chamar startIntentSenderForResult às APIs ActivityResult. (b/153007517, link em inglês)

Mudanças na API

  • O método prepareCall() foi renomeado como registerForActivityResult(), tanto em ComponentActivity como em Fragment 1.3.0-alpha04. (aosp/1278717, link em inglês)
  • Os contratos GetContents, OpenDocuments e RequestPermissions foram renomeados como GetMultipleContents, OpenMultipleDocuments e RequestMultiplePermissions, respectivamente. (aosp/1280161, link em inglês)
  • ComponentActivity agora implementa a interface ActivityResultRegisteryOwner. (aosp/1290888, link em inglês)
  • As APIs startActivityForResult()/onActivityResult() e onRequestPermissionsResult() em ComponentActivity foram suspensas. Use as APIs Activity Result. (b/154751887, link em inglês)

Correções de bugs

  • Ao usar os contratos GetMultipleContents e OpenMultipleDocuments e selecionar um único item, ele será retornado corretamente para o 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 essas confirmações (link em inglês).

Novos recursos

  • Adição dos contratos TakeVideo, PickContact, GetContent, GetContents, OpenDocument, OpenDocuments, OpenDocumentTree e CreateDocument ao conjunto de contratos pré-criados fornecidos por ActivityResultContracts. (aosp/1252482, aosp/1266916, aosp/1268960, links em inglês)
  • As APIs Activity Result agora são compatíveis com o lançamento de uma atividade para resultado com um ActivityOptionsCompat opcional. (b/151860054, link em inglês)

Mudanças na API

  • O contrato TakePicture usa uma entrada Uri para onde a imagem será armazenada. O contrato anterior que não aceita entradas foi renomeado como TakePicturePreview. (aosp/1262482, link em inglês)
  • O método registerActivityResultCallback() em ActivityResultRegistry foi renomeado como register(). (aosp/1267621, link em inglês)
  • O método dispose() em ActivityResultLauncher foi renomeado como unregister() e o unregisterResultCallback() em ActivityResultRegistry foi removido. (aosp/1267621, link em inglês)
  • O método createIntent() de ActivityResultContact agora usa um Context além da entrada para possibilitar a criação de intents explícitas. (aosp/1238800, link em inglês)
  • Um ActivityResultContract agora pode modificar getSynchronousResult() para entregar um resultado sem chamar startActivityForResult. Isso é usado pelos contratos RequestPermission e RequestPermissions para exibir corretamente o status "concedido" se as permissões solicitadas já tiverem sido concedidas. (b/151110799, link em inglês)
  • O contrato Dial anteriormente disponível foi removido porque Intent não pode ser usado com startActivityForResult(). (aosp/1266916, link em inglês)
  • Muitas das APIs Activity Result que não podem ser estendidas agora são final. Isso inclui getActivityResultRegistry(), os métodos prepareCall(), todos os métodos de ActivityResultRegistry, exceto invoke(), e vários contratos padrão que não são compatíveis com extras opcionais. (b/152439361, link em inglês)

Correções de bugs

  • Correção de um NullPointerException em ActivityResultRegistry ao tentar entregar resultados a um callback que ainda não foi registrado novamente após uma mudança de configuração. ActivityResultRegistry agora mantém esses resultados pendentes e os entrega quando o callback é registrado novamente. (b/152137004, link em inglês)

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 essas confirmações (link em inglês).

Novos recursos

  • ActivityResultRegistry: agora, ComponentActivity fornece um ActivityResultRegistry que permite processar os fluxos startActivityForResult()+onActivityResult() e requestPermissions()+onRequestPermissionsResult() sem modificar os métodos na sua Activity ou seu Fragment, aumenta a segurança do tipo via ActivityResultContract e fornece hooks para testar esses fluxos. Veja a atualização de Como gerar resultados com uma Activity. (b/125158199, link em inglês)

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 essas confirmações (link em inglês).

Novos recursos

  • Inclusão de compatibilidade com a API ViewTreeLifecycleOwner.get(View) adicionada no Lifecycle 2.3.0-alpha01, de modo que ela retornará a Activity como o LifecycleOwner para qualquer View adicionada diretamente à Activity. (aosp/1182955, link em inglês)

Correções de bugs

  • Correção de uma regressão introduzida na Activity 1.1.0 ao ser executada em versões mais antigas da plataforma em que onBackPressed() causava uma IllegalStateException devido a um bug no android.app.FragmentManager. (b/146290338, link em inglês)

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.0.0 contém essas confirmações (link em inglês).

Mudanças importantes desde a versão 1.0.0

  • Integração de Lifecycle ViewModel SavedState: SavedStateViewModelFactory agora é a fábrica padrão empregada ao usar o by viewModels(), o construtor ViewModelProvider ou ViewModelProviders.of() com uma ComponentActivity ou 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 essas confirmações (link em inglês).

Mudanças na dependência

  • Agora, a atividade depende do Lifecycle 2.2.0-rc03 e do Lifecycle ViewModel SavedState 1.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.0.0-rc02 contém essas confirmações (link em inglês).

Mudanças na dependência

  • A atividade agora depende do Lifecycle 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.0.0-rc01 contém essas confirmações (link em inglês).

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.0.0-beta01 contém essas confirmações (link em inglês).

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 (link em inglês).

Novos recursos

  • A atividade depende do Core 1.1.0 estável.

Correções de bugs

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 (link em inglês).

Novos recursos

  • SavedStateViewModelFactory agora é a fábrica padrão empregada ao usar by viewModels(), o construtor ViewModelProvider ou ViewModelProviders.of() com ComponentActivity (b/135716331, link em inglês)

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 (link em inglês).

Novos recursos

  • activity agora depende do ciclo de vida 2.2.0-alpha02. (aosp/1007817, link em inglês)
  • activity-ktx adicionou uma dependência em lifecycle-runtime-ktx. Você não precisa mais adicioná-lo explicitamente às suas dependências ao usar activity-ktx ou bibliotecas que dependem de activity-ktx (como fragment-ktx). (aosp/987162, link em inglês)

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 (link em inglês).

Principais recursos do 1.0.0

  • ComponentActivity: ComponentActivity serve como a nova classe base para FragmentActivity em Fragment 1.1.0 e, por extensão, AppCompatActivity em AppCompat1.1.0.
  • activity-ktx: o módulo activity-ktx inclui uma extensão de propriedade by viewModels do Kotlin para acessar ViewModels. Este módulo é incluído automaticamente quando você adiciona fragment-ktx de Fragment 1.1.0.
  • OnBackPressedDispatcher: como uma alternativa composta à modificação de onBackPressed(), agora você pode registrar um OnBackPressedCallback de qualquer LifecycleOwner (como um fragmento) para interceptar eventos do botão "Voltar" do sistema. Um lambda com versão de receptor addCallback foi adicionado a activity-ktx. Consulte a página Fornecer documentação de navegação retroativa personalizada para mais detalhes.
  • Suspensão de uso de onRetainCustomNonConfigurationInstance: onRetainCustomNonConfigurationInstance() e as APIs getLastCustomNonConfigurationInstance() relacionadas foram suspensas. É altamente recomendável usar ViewModels para armazenar o estado de não configuração porque eles oferecem uma solução composta adequada para qualquer ViewModelStoreOwner que torne clara a propriedade dos objetos retidos e forneça um callback de onCleared() 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 (link em inglês).

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 (link em inglês).

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 aqui (link em inglês).

Mudanças na API

  • Alteração importante: os métodos addOnBackPressedCallback e removeOnBackPressedCallback são obsoletos em ComponentActivity e foram removidos. aosp/953857, link em inglês.
  • Os métodos setEnabled() e isEnabled() de OnBackPressedCallback agora são finais. b/131416833, link em inglês.
  • O método remove() de OnBackPressedCallback agora é final. aosp/952720, link em inglês.
  • OnBackPressedDispatcher agora tem construtores públicos, permitindo construir as próprias instâncias para testes etc. aosp/953431, link em inglês.
  • onBackPressed() para ComponentActivity agora é explicitamente marcado como @MainThread. (aosp/952721, link em inglês)

Correções de bugs

  • Correção de um ConcurrentModificationException ao chamar remove() de dentro do método handleOnBackPressed() de um OnBackPressedCalback que foi adicionado com um LifecycleOwner. b/131765095, link em inglês

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 aqui (link em inglês).

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 OnBackPressedCallback e OnBackPressedDispatcher foram marcados como @MainThread. (aosp/943813, link em inglês)
  • O handleOnBackPressed() método não retorna mais um boolean. Em vez disso, OnBackPressedCallback agora é uma classe abstrata que pode ser ativada ou desativada. Somente quando o novo método isEnabled() retornar "true", handleOnBackPressed() será chamado, e será necessário lidar com o botão "Voltar". (aosp/944518, link em inglês)
  • Os métodos addCallback de OnBackPressedDispatcher não retornam mais uma instância Cancellable. OnBackPressedCallback agora contém um método remove() que preenche essa funcionalidade, permitindo que você chame remove() durante handleOnBackPressed(). (aosp/944519) (aosp/946316), links em inglês
  • activity-ktx agora contém um callback com escopo no receptor para addCallback que aceita um lambda. Esse lambda implementa handleOnBackPressed() e tem acesso a isEnabled e a remove() (aosp/944520, link em inglês)

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 aqui (link em inglês).

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, link em inglês)
  • O uso das APIs relacionadas a OnBackPressedCallback no ComponentActivity foi suspenso em favor do novo OnBackPressedDispatcher, recuperável por meio de getOnBackPressedDispatcher(). (aosp/922523, link em inglês)
  • Os métodos para adicionar um novo OnBackPressedCallback ao OnBackPressedDispatcher agora retornam um objeto Cancellable, permitindo a remoção do callback sem exigir uma referência explícita ao OnBackPressedDispatcher. (aosp/922523, link em inglês)
  • Adicionar um OnBackPressedCallback com um LifecycleOwner associado agora resulta na adição e remoção de OnBackPressedCallback quando o Lifecycle é 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 (link em inglês).

Novos recursos

  • Pesquisas da anotação @ContentView agora estão em cache. (b/123709449, link em inglês)

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

  • Adição de compatibilidade com a anotação de classe @ContentView, que permite indicar qual arquivo XML de layout deve ser inflado como alternativa ao uso de setContentView(). (aosp/837619, link em inglês)

Mudanças na API

  • Adição de 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 modificando esse método atualmente. (aosp/837619, link em inglês)

Correções de bugs

  • O módulo activity agora depende da versão 2.1.0-alpha02 de ViewModel para corresponder à dependência do módulo activity-ktx.

Versão 1.0.0-alpha03

17 de dezembro de 2018

Lançamento do androidx.activity 1.0.0-alpha03.

Novos recursos

  • ComponentActivity agora implementa BundleSavedStateRegistryOwner e depende da recém-lançada biblioteca SavedState [aosp/815133, link em inglês]
  • ComponentActivity agora soluciona um bug do framework Android que fazia o InputMethodManager vazar a última visualização focada. (b/37122102, link em inglês)

Versão 1.0.0-alpha02

3 de dezembro de 2018

Mudanças na API

  • Adição de uma observação que getLifecycle() não precisa ser modificado e que será considerado final em uma versão futura. Registre uma solicitação de recurso se você modifica esse método atualmente. (aosp/815834, link em inglês)

Versão 1.0.0-alpha01

5 de novembro de 2018

androidx.activity 1.0.0-alpha01 apresenta ComponentActivity, uma nova classe base da existente FragmentActivity e AppCompatActivity.

Novos recursos

  • Agora você pode registrar OnBackPressedCallback via addOnBackPressedCallback para receber callbacks onBackPressed(), sem ter que modificar o método na atividade.
  • Adição de um novo delegado da propriedade by viewModels() Kotlin para recuperar ViewModels de um ComponentActivity.
  • Eventos de entrada pendentes, como cliques, agora são cancelados em onStop().

Mudanças na API

  • A implementação de LifecycleOwner e ViewModelStoreOwner foi movida de FragmentActivity para ComponentActivity.
  • onRetainCustomNonConfigurationInstance está obsoleto. Use um ViewModel para armazenar objetos que precisam sobreviver às mudanças de configuração.