Savedstate
| 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.3.3 | 1.4.0-rc01 | - | - | 
Declarar dependências
Para adicionar uma dependência ao SavedState, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários ao arquivo build.gradle do
seu app ou módulo:
Groovy
dependencies { // Java language implementation implementation "androidx.savedstate:savedstate:1.3.3" // Kotlin implementation "androidx.savedstate:savedstate-ktx:1.3.3" }
Kotlin
dependencies { // Java language implementation implementation("androidx.savedstate:savedstate:1.3.3") // Kotlin implementation("androidx.savedstate:savedstate-ktx:1.3.3") }
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.4
Versão 1.4.0-rc01
22 de outubro de 2025
Lançamento de androidx.savedstate:savedstate-*:1.4.0-rc01 sem mudanças desde a versão 1.4.0-beta01. A versão 1.4.0-rc01 contém estes commits.
Versão 1.4.0-beta01
8 de outubro de 2025
androidx.savedstate:savedstate-*:1.4.0-beta01 é lançado sem mudanças significativas desde a última versão Alfa. A versão 1.4.0-beta01 contém estes commits.
Versão 1.4.0-alpha03
27 de agosto de 2025
Lançamento de androidx.savedstate:savedstate-*:1.4.0-alpha03. A versão 1.4.0-alpha03 contém estes commits.
Mudanças na API
- Adição de suporte para tipos anuláveis em encodeToSavedStateedecodeFromSavedState. (I79062, b/439527454)
- Atualize o Compose para a versão 1.9.0. (I2b9de)
Versão 1.4.0-alpha02
13 de agosto de 2025
Lançamento de androidx.savedstate:savedstate-*:1.4.0-alpha02. A versão 1.4.0-alpha02 contém estes commits.
Versão 1.4.0-alpha01
30 de julho de 2025
Lançamento de androidx.savedstate:savedstate-*:1.4.0-alpha01. A versão 1.4.0-alpha01 contém estes commits.
Mudanças na API
- Adição de suporte nativo para tipos anuláveis em SavedStateRegistryOwner.saved, simplificando o salvamento e a restauração de propriedades anuláveis. (Ia632, b/421325690)
Versão 1.3
Versão 1.3.3
17 de setembro de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.3. A versão 1.3.3 contém estes commits.
Correções de bugs
- Correção de um erro em que o plug-in do compilador do Compose não era aplicado, o que fazia com que os artefatos SavedStatedo KMP fossem corrompidos. (Id2290, b/443965665)
Versão 1.3.2
27 de agosto de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.2. A versão 1.3.2 contém estes commits.
Novos recursos
- Adição de novas plataformas do Kotlin Multiplatform (KMP) ao artefato SavedState *-compose. Agora o ciclo de vida oferece suporte às seguintes plataformas: JVM (Android e computador), nativa (Linux, iOS, watchOS, macOS, MinGW) e Web (JavaScript, WasmJS). (/Idcf26)
Versão 1.3.1
16 de julho de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.1. A versão 1.3.1 contém estes commits.
Correções de bugs
- Adicione todas as metas de KMP compatíveis com anotações aos artefatos SavedState.
- Adição de novas plataformas do Kotlin Multiplatform (KMP) aos artefatos SavedState. OSavedStateagora é compatível com as seguintes plataformas: JVM (Android e desktop), nativa (Linux, iOS, watchOS, macOS, MinGW) e Web (JavaScript, WasmJS). Nenhum novo destino do KMP foi adicionado aos artefatos*-compose, já que isso depende do lançamento estável do Compose 1.9. (I062f4).
Versão 1.3.0
7 de maio de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0. A versão 1.3.0 contém estes commits.
Mudanças importantes desde a versão 1.2.0
- LocalSavedStateRegistryOwnerfoi movido da interface do Compose para o novo módulo- savedstate-composepara que as APIs auxiliares baseadas no Compose possam ser usadas fora da interface do Compose. Isso sempre deve ser usado com a Interface do Compose- 1.9.0-alpha02e versões mais recentes, mas é compatível com versões anteriores para que possa ser usado com todas as versões do Compose.
- As extensões savedstate-ktxdo Kotlin foram movidas para o módulo base savedstate.
- As instâncias SavedStateRegistryOwnerrecuperadas viafindViewTreeSavedStateRegistryOwneragora podem ser resolvidas por pais disjuntos 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.
Kotlin Multiplatform
- O módulo SavedStateagora é compatível com o KMP. As plataformas compatíveis agora incluem ambientes de computador Android, iOS, Linux, Mac e JVM.
- Introduzimos o tipo opaco - SavedStatecomo uma abstração para fornecer uma maneira consistente de salvar e restaurar o estado do aplicativo no KMP. Ele inclui um- SavedStateReadere um- SavedStateWriterpara modificar o estado a ser salvo. No Android,- SavedStateé um alias de tipo para- Bundle, garantindo a compatibilidade binária e facilitando a migração de APIs atuais para um conjunto de origem comum. Em outras plataformas,- SavedStateé uma instância- Map<String, Any>.- // Create a new SavedState object using the savedState DSL: val savedState = savedState { putInt("currentPage", 1) putString("filter", "favorites") } // Read from a SavedState object val currentPage = savedState.read { getInt("currentPage") } // Edit an existing SavedState object savedState.write { remove("currentPage") }
Suporte à serialização do KotlinX (link em inglês)
- O - SavedStateagora inclui suporte à serialização do KotlinX. É possível converter uma classe anotada com- @Serializableem um- SavedStateusando os métodos- encodeToSavedStatee- decodeFromSavedState. O- SavedStateretornado é um- Bundlecomum no Android e pode ser usado por qualquer API que aceite um- Bundle.- @Serializable data class Person(val firstName: String, val lastName: String) fun main() { val person = Person("John", "Doe") val encoded: SavedState = encodeToSavedState(person) val decoded: Person = decodeFromSavedState(encoded) }
- Embora a maioria dos tipos (como tipos primitivos) seja compatível diretamente sem necessidade de configuração, outros serializadores que podem ser usados com - @Serializable(with = ___:class)podem ser encontrados no pacote- androidx.savedstate.serialization.serializersno módulo- savedstatee no pacote- androidx.savedstate.compose.serialization.serializersno módulo- savedstate-compose.
- Também incluímos - saved, um delegado de propriedade lazy, para facilitar o armazenamento de classes- @Serializableem um- SavedStateRegistryOwner(por exemplo,- ComponentActivity,- Fragmentetc.) e restaurar automaticamente essas classes em caso de encerramento e recriação do processo. O delegado- savedé lazy e não vai chamar a lambda- initnem salvar nada no- SavedStateRegistryaté que ele seja acessado.- @Serializable data class Person(val firstName: String, val lastName: String) class MyActivity : ComponentActivity() { var person by saved { Person("John", "Doe") } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.person = Person("Jane", "Doe") } }
- Há um delegado de propriedade - savedsemelhante para- SavedStateHandleadicionado no Lifecycle- 2.9.0.
Versão 1.3.0-rc01
23 de abril de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0-rc01. A versão 1.3.0-rc01 contém estes commits.
Versão 1.3.0-beta01
9 de abril de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0-beta01. A versão 1.3.0-beta01 contém estes commits.
Atualizações de dependência
- Essa biblioteca agora é destinada ao nível de linguagem Kotlin 2.0 e exige o KGP 2.0.0 ou mais recente. (Idb6b5).
Versão 1.3.0-alpha11
26 de março de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha11 sem mudanças públicas significativas. A versão 1.3.0-alpha11 contém estes commits.
Versão 1.3.0-alpha10
12 de março de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha10. A versão 1.3.0-alpha10 contém estes commits.
Novos recursos
- Adição de variantes de método não materializadas para coleções getemSavedStateReader. (I0b641, b/399820614).
- Adicione encodeDefaultsaSavedStateConfiguration, permitindo personalizar se as propriedades com valores padrão devem ser codificadas. (I893cc, b/395104517).
- Adicione SnapshotStateMapSerializerpara oferecer compatibilidade commutableStateMapOf. (Ie6f19, b/378895074)
- Adicione SnapshotStateListSerializerpara oferecer compatibilidade commutableStateListOf. (I4d888, b/378895074)
- Adicione métodos alternativos de getOrNullpara variantes deSavedStateReader.get. Esses métodos vão fazer o boxing automático de valores primitivos. (I6228c, b/399820614).
Mudanças na API
- Remova getOrElsedeSavedStateReaderem favor degetOrNull() ?: else(). (I87317, b/399820614)
- Remova o modificador inlinedos métodosSavedStateReadereSavedStateWriter. (If2a02, b/399820614)
- Remoção dos serializadores de lista e matriz integrados específicos do Android da API pública (Ida293)
- Substituição de SparseParcelableArraySerializerporSparseArraySerializer(I91de8)
- Faça com que todos os SavedStateReader.getse comportem de maneira consistente gerando uma exceção quando o tipo de valor não corresponde ao tipo de retorno (I78c4a, b/399317598).
- SavedState*Delegatesfoi renomeado como- SavedState*Delegate. (I8589b, b/399629301)
- SavedStateConfigfoi renomeado como- SavedStateConfiguration. (I043a5, b/399629301)
Versão 1.3.0-alpha09
26 de fevereiro de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha09. A versão 1.3.0-alpha09 contém estes commits.
Novos recursos
- Adicione um substituto para tipos integrados, garantindo que todos os tipos compatíveis com Bundlepossam ser usados comencodeAsSavedState/decodeFromSavedStatepor padrão ou, para propriedades em classes@Serializable, pela anotação@Contextual. (Ic01d2).
- Inclua suporte para classDiscriminatoreclassDiscriminatorModeemSavedStateConfig. (I69b66, b/395104517).
Mudanças na API
- Adição do parâmetro SavedStateConfigaos delegadossaved()(I39b3a)
- Transforma serializadores integrados em objetos singleton (Ifeee4).
- As propriedades SavedStateConfigagora são públicas, permitindo que outros módulos usem essas configurações. (Ie5f49, b/378897438)
- Suporte a @Serializer(with = ...)paraMutableStateFlowSerializereMutableStateSerializer(I90953)
- Adição de contentDeepToStringaSavedStateReader(I14d10).
Versão 1.3.0-alpha08
12 de fevereiro de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha08. A versão 1.3.0-alpha08 contém estes commits.
Novos recursos
- Mova MutableStateSerializerparasavedstate-composedelifecycle-viewmodel-compose, permitindo que você use as APIs de serialização SavedState com oMutableStatedo Compose. (I4f690, b/378895074)
Mudanças na API
- Adicione uma função de fábrica para criar SavedStatede umSavedStateexistente. (I39f9a).
- Adiciona compatibilidade com Array<SavedState>eList<SavedState>emandroidx.savedstate. (Idd8a5).
- Adição do parâmetro opcional SavedStateConfigà codificação/decodificação de SavedState (I6c4c0).
Versão 1.3.0-alpha07
29 de janeiro de 2025
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha07. A versão 1.3.0-alpha07 contém estes commits.
Novos recursos
- Adicione MutableStateFlowSerializerpara serializarkotlinx.coroutines.flow.MutableStateFlow. (I6a892, b/378895070).
Mudanças na API
- Substitua as funções delegadas SavedStateRegistryOwner.saved()sobrecarregadas por parâmetros padrão (Icd1c1).
- Tornar JavaSerializableSerializereParcelableSerializerabstratos (I268f6)
- Remoção do T : CharSequencegenérico deCharSequenceSerializer(Ib40bd).
Versão 1.3.0-alpha06
11 de dezembro de 2024
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha06. A versão 1.3.0-alpha06 contém estes commits.
Novos recursos
- SavedStateA KMP agora é compatível com:- IBinder,- Size,- SizeF,- Array<Parcelable>,- SparseArray<Parcelable>e Serializable (Android). (I1ba94, b/334076622).
- Adicione instâncias KSerializerque podem ser usadas para codificar/decodificar tipos Java e Android compatíveis com o Bundle marcando o campo relevante na sua classe com@Serializable(with = ParcelableSerializer::class). (I8c10f, I28caf, b/376026712)
- As instâncias SavedStateRegistryOwnerrecuperadas viafindViewTreeSavedStateRegistryOwneragora podem ser resolvidas por pais disjuntos 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. (Iccb33).
Mudanças na API
- Deixar a nomenclatura e a organização de pacotes mais consistentes com SavedStateRegistryOwnerDelegate(I8c135, b/376026744)
Versão 1.3.0-alpha05
13 de novembro de 2024
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha05. A versão 1.3.0-alpha05 contém estes commits.
Suporte à serialização do KotlinX (link em inglês)
- O - SavedStateagora inclui suporte à serialização do KotlinX. É possível converter uma classe anotada com- @Serializableem um- SavedStateusando os métodos- encodeToSavedStatee- decodeFromSavedState. O- SavedStateretornado é um- Bundlecomum no Android e pode ser usado por qualquer API que aceite um- Bundle. (I6f59f, b/374102924)- @Serializable data class Person(val firstName: String, val lastName: String) fun main() { val person = Person("John", "Doe") val encoded: SavedState = encodeToSavedState(person) val decoded: Person = decodeFromSavedState(encoded) }
- Também incluímos - saved, um delegado de propriedade lazy, para facilitar o armazenamento de classes- @Serializableem um- SavedStateRegistryOwner(por exemplo,- ComponentActivity,- Fragmentetc.) e restaurar automaticamente essas classes em caso de encerramento e recriação do processo. O delegado- savedé lazy e não vai chamar a lambda- initnem salvar nada no- SavedStateRegistryaté que ele seja acessado. (I66739, b/376027806)- @Serializable data class Person(val firstName: String, val lastName: String) class MyActivity : ComponentActivity() { var person by saved { Person("John", "Doe") } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) this.person = Person("Jane", "Doe") } }
- Há um delegado de propriedade - savedsemelhante para- SavedStateHandleadicionado no Lifecycle- 2.9.0-alpha07.
Mudanças na API
- Adicione toMapaSavedState, permitindo que qualquerSavedStateseja convertido em umMapregular (cópia superficial). (I487b9, b/334076622).
- O KMP SavedStateagora é compatível com matrizes. (Ic0552, b/334076622).
Versão 1.3.0-alpha04
30 de outubro de 2024
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha04. A versão 1.3.0-alpha04 contém estes commits.
Mudanças na API
- A KMP SavedState agora é compatível com Char. (I9ac2f, b/334076622).
- Adição de putNulleisNullao KMP SavedState. (Iea71d, b/334076622).
- Adição de outros parâmetros de fábrica savedStateque oferecem suporte a umMap<String, Any>inicial (I9b37d, b/334076622)
- A KMP SavedState agora é compatível com a comparação contentDeepEquals. (Ia515c, b/334076622).
- A KMP SavedState agora é compatível com Long. (I4c180, b/334076622).
Versão 1.3.0-alpha03
16 de outubro de 2024
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha03 sem mudanças importantes. A versão 1.3.0-alpha03 contém estes commits.
Versão 1.3.0-alpha02
2 de outubro de 2024
Lançamento de androidx.savedstate:savedstate-*:1.3.0-alpha02. A versão 1.3.0-alpha02 contém estes commits.
Kotlin Multiplatform
- O módulo SavedStateagora é compatível com o KMP. As plataformas compatíveis agora incluem ambientes de computador Android, iOS, Linux, Mac e JVM. (I26305, b/334076622).
Novos recursos
- Introduzimos o tipo opaco SavedStatecomo uma abstração para fornecer uma maneira consistente de salvar e restaurar o estado do aplicativo no KMP. Ele inclui umSavedStateReadere umSavedStateWriterpara modificar o estado a ser salvo. No Android,SavedStateé um alias de tipo paraBundle, garantindo a compatibilidade binária e facilitando a migração de APIs atuais para um conjunto de origem comum. Em outras plataformas,SavedStateé uma instânciaMap<String, Any>. (I18575, b/334076622)
  // Create a new SavedState object using the savedState DSL:
  val savedState = savedState {
    putInt("currentPage", 1)
    putString("filter", "favorites")
  }
  // Read from a SavedState object
  val currentPage = savedState.read { getInt("currentPage") }
  // Edit an existing SavedState object
  savedState.write {
    remove("currentPage")
  }
Mudanças na API
- Os artefatos SavedStateRegistryeSavedStateRegistryControlleragora são compatíveis com a KMP. (Id7bb8, b/334076622)
- SavedState,- SavedStateWritere- SavedStateReaderagora são compatíveis com o KMP. (I26305, b/334076622).
Versão 1.3.0-alpha01
7 de agosto de 2024
Lançamento de androidx.savedstate:savedstate:1.3.0-alpha01 e androidx.savedstate:savedstate-ktx:1.3.0-alpha01. A versão 1.3.0-alpha01 contém estes commits.
Mudanças na API
- As extensões savedstate-ktxdo Kotlin foram movidas para o módulo base savedstate. (I1cc18, b/274803094)
Observação
- Atualizar compileSdkpara 35 (5dc41be)
Versão 1.2.1
Versão 1.2.1
22 de março de 2023
Lançamento de androidx.savedstate:savedstate:1.2.1 e androidx.savedstate:savedstate-ktx:1.2.1. A versão 1.2.1 contém estas confirmações.
Atualizações de dependência
- SavedStateagora depende do Lifecycle- 2.6.1. (c1f621)
Versão 1.2.0
Versão 1.2.0
29 de junho de 2022
Lançamento de androidx.savedstate:savedstate:1.2.0 e androidx.savedstate:savedstate-ktx:1.2.0. A versão 1.2.0 contém estas confirmações.
Mudanças importantes desde a versão 1.1.0
- A classe SavedStateRegistryControlleragora permite a anexação antecipada doSavedStateRegistrypelo métodoperformAttach().
- Agora você pode extrair um SavedStateProviderregistrado anteriormente de umSavedStateRegistryusandogetSavedStateProvider().
- A biblioteca SavedStatefoi reescrita em Kotlin.- Para SavedStateRegistryOwner, essa é uma mudança incompatível com a fonte das classes escritas em Kotlin. Agora é necessário mudar a propriedadesavedStateRegistryem vez de implementar a funçãogetSavedStateRegistry()anterior.
- Para ViewTreeSavedStateRegistryOwner, essa é uma mudança incompatível com a fonte das classes escritas em Kotlin. Agora é necessário importar e usar diretamente os métodos de extensão Kotlin naViewdeandroidx.savedstate.setViewTreeSavedStateRegistryOwnereandroidx.savedstate.findViewTreeSavedStateRegistryOwnerpara definir e encontrar um proprietário configurado anteriormente. Isso substitui a APIsavedstate-ktxdefindViewTreeSavedStateRegistryOwner.
 
- Para 
Mudanças de comportamento
- A classe SavedStateRegistrynão salva mais um pacote vazio se não houver um estado a ser salvo.
Versão 1.2.0-rc01
11 de maio de 2022
Lançamento de androidx.savedstate:savedstate:1.2.0-rc01 e androidx.savedstate:savedstate-ktx:1.2.0-rc01. A versão 1.2.0-rc01 contém estas confirmações.
Mudanças na documentação
- Os Kdocs de SavedStateRegistryOwnerforam atualizados para esclarecer as responsabilidades e o contrato que o proprietário tem sobre como implementar a interface ou quando chamar os métodos na classeSavedStateRegistryController(Iefc95, b/228887344).
Versão 1.2.0-beta01
20 de abril de 2022
Lançamento de androidx.savedstate:savedstate:1.2.0-beta01 e androidx.savedstate:savedstate-ktx:1.2.0-beta01. A versão 1.2.0-beta01 contém estas confirmações.
Mudanças na API
- As classes SavedStateRegistryeViewTreeSavedStateRegistryOwnerforam reescritas em Kotlin. ParaViewTreeSavedStateRegistryOwner, essa é uma mudança incompatível com a fonte das classes escritas em Kotlin. Agora é necessário importar e usar diretamente os métodos de extensão Kotlin naViewdeandroidx.savedstate.setViewTreeSavedStateRegistryOwnereandroidx.savedstate.findViewTreeSavedStateRegistryOwnerpara definir e encontrar um proprietário configurado anteriormente. Isso substitui a APIsavedstate-ktxdefindViewTreeSavedStateRegistryOwner. Ela é compatível com binários e mantém a compatibilidade com fontes nas implementações escritas na linguagem de programação Java (b/220191285).
Versão 1.2.0-alpha02
6 de abril de 2022
Lançamento de androidx.savedstate:savedstate:1.2.0-alpha02 e androidx.savedstate:savedstate-ktx:1.2.0-alpha02. A versão 1.2.0-alpha02 contém estas confirmações.
Novos recursos
- Agora você pode extrair um SavedStateProviderregistrado anteriormente de umSavedStateRegistryusandogetSavedStateProvider()(I7ea47, b/215406268).
Mudanças na API
- As classes SavedStateRegistryOwner,SavedStateRegistryControllereRecreatorforam reescritas em Kotlin. ParaSavedStateRegistryOwner, essa é uma mudança incompatível com a fonte das classes escritas em Kotlin. Agora é necessário mudar a propriedadesavedStateRegistryem vez de implementar a funçãogetSavedStateRegistry()anterior. Ela é compatível com binários e fontes e serve para implementações escritas na linguagem de programação Java (b/220191285).
Versão 1.2.0-alpha01
26 de janeiro de 2022
Lançamento de androidx.savedstate:savedstate:1.2.0-alpha01 e androidx.savedstate:savedstate-ktx:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.
Novos recursos
- A classe SavedStateRegistryControlleragora permite a anexação antecipada daSavedStateRegistryviaperformAttach()(Ice4bf).
Mudanças de comportamento
- A classe SavedStateRegistrynão salva mais um pacote vazio se não houver um estado a ser salvo (aosp/1896865, b/203457956).
Versão 1.1.0
Versão 1.1.0
10 de fevereiro de 2021
Lançamento de androidx.savedstate:savedstate:1.1.0 e androidx.savedstate:savedstate-ktx:1.1.0. A versão 1.1.0 contém estas confirmações.
Principais mudanças desde a versão 1.0.0
- API ViewTreeSavedStateRegistryOwner: uma nova APIViewTreeSavedStateRegistryOwner.get(View)permite que você recupere oSavedStateRegistrycontido de uma instânciaView. Você precisa fazer upgrade para a Activity1.2.0, Fragment1.3.0e AppCompat1.3.0-alpha01ou mais recente para preencher corretamente.
- Artefato savedstate-ktx: o novo artefatosavedstate-ktxfoi adicionado com uma extensão KotlinfindViewTreeSavedStateRegistryOwner()para trabalhar comViewTreeSavedStateRegistryOwner.
Versão 1.1.0-rc01
16 de dezembro de 2020
Lançamento de androidx.savedstate:savedstate:1.1.0-rc01 e androidx.savedstate:savedstate-ktx:1.1.0-rc01, sem mudanças desde a 1.1.0-beta01. A versão 1.1.0-rc01 contém estas confirmações.
Versão 1.1.0-beta01
1º de outubro de 2020
Lançamento de androidx.savedstate:savedstate:1.1.0-beta01 e androidx.savedstate:savedstate-ktx:1.1.0-beta01, sem mudanças desde a 1.1.0-alpha01. A versão 1.1.0-beta01 contém estas confirmações.
Versão 1.1.0-alpha01
20 de maio de 2020
Lançamento de androidx.savedstate:savedstate:1.1.0-alpha01 e androidx.savedstate:savedstate-ktx:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.
Novos recursos
- Uma nova API ViewTreeSavedStateRegistryOwner.get(View)permite que você extraia oSavedStateRegistrycontido de uma instânciaView. É necessário fazer upgrade para Atividade1.2.0-alpha05, Fragmento1.3.0-alpha05e AppCompat1.3.0-alpha01para preencher corretamente. (aosp/1298679).
- O novo artefato savedstate-ktxfoi adicionado com uma extensão KotlinfindViewTreeSavedStateRegistryOwner()para trabalhar comViewTreeSavedStateRegistryOwner(aosp/1299434, link em inglês).
Versão 1.0.0
Versão 1.0.0
5 de setembro de 2019
Lançamento de androidx.savedstate:savedstate:1.0.0.  As confirmações incluídas nesta versão podem ser conferidas neste link.
Principais recursos do SavedState 1.0.0
androidx.savedstate se tornou uma versão estável. Este é um conjunto de APIs que permite aos desenvolvedores conectar componentes de plug-in no processo restore / saveInstanceState. O ponto de entrada principal da API é SavedStateRegistry, que traz uma maneira de recuperar estados salvos anteriormente usando consumeRestoredStateForKey e registrar um callback para registerSavedStateProvider para disponibilizar um estado salvo quando o sistema o solicitar.
Versão 1.0.0-rc01
2 de julho de 2019
Lançamento de androidx.savedstate:savedstate:1.0.0-rc01.  As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Correções de bugs
- Correção de uma regra incorreta do Proguard (b/132655499)
Versão 1.0.0-beta01
7 de maio de 2019
Lançamento de androidx.savedstate:savedstate:1.0.0-beta01.  As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Versão 1.0.0-alpha02
13 de março de 2019
Lançamento de androidx.savedstate:savedstate:1.0.0-alpha02.  androidx.savedstate:savedstate combina androidx.savedstate:savedstate-bundle e androidx.savedstate:savedstate-common em um único artefato, porque foi decidido simplificar a infraestrutura do savedstate e remover os genéricos do SavedStateRegistry.  Portanto, não é necessário ter módulos diferentes.
A lista completa das confirmações incluídas nesta versão pode ser conferida neste link.
Novos recursos
- Adição de SavedStateRegistry.runOnNextRecreaction(Class<? extends AutoRecreated> clazz ). A classe determinada será instanciada e o métodoAutoRecreated.onRecreatedserá executado quando o componente proprietário for reiniciado.
Mudanças na API
- Genéricos removidos de SavedStateRegistry<T>.
- AbstractSavedStateRegistry e BundlableSavedStateRegistry foram removidos. Use SavedStateRegistry.
- BundleSavedStateRegistryOwnerfoi renomeado como- SavedStateRegistryOwner.
Versão 1.0.0-alpha01
17 de dezembro de 2018
Essa é a primeira versão do SavedState.
Novos recursos
androidx.savedstate é um novo conjunto de APIs alfa que permite que os desenvolvedores façam o plug-in de componentes para o processo restore / saveInstanceState.  O ponto de entrada principal da API é SavedStateRegistry<T>, que traz uma maneira de recuperar o savedstate anterior via consumeRestoredStateForKey e registrar um callback para registerSavedStateProvider para disponibilizar um savedstate quando o sistema o solicitar.
