Stato salvato

Scrivi componenti collegabili che salvano lo stato dell'interfaccia utente quando un processo scompare e li ripristinano al riavvio del processo.
Aggiornamento più recente Release stabile Candidato per l'uscita Versione beta Release alpha
7 agosto 2024 1.2.1 - - 1.3.0-alpha01

Dichiarazione delle dipendenze

Per aggiungere una dipendenza su SavedState, devi aggiungere il Repository Maven di Google al tuo progetto. Consulta il Repository Maven di Google per ulteriori informazioni.

Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per l'app o il modulo:

Alla moda

dependencies {
    // Java language implementation
    implementation "androidx.savedstate:savedstate:1.2.1"

    // Kotlin
    implementation "androidx.savedstate:savedstate-ktx:1.2.1"
}

Kotlin

dependencies {
    // Java language implementation
    implementation("androidx.savedstate:savedstate:1.2.1")

    // Kotlin
    implementation("androidx.savedstate:savedstate-ktx:1.2.1")
}

Per saperne di più sulle dipendenze, consulta Aggiungere dipendenze build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Non esitare a contattarci in caso di nuovi problemi o idee per migliorare questa raccolta. Dai un'occhiata alle problemi esistenti in questa raccolta, prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente tramite facendo clic sul pulsante a forma di stella.

Crea un nuovo numero

Consulta la documentazione di Issue Tracker per ulteriori informazioni.

Versione 1.3

Versione 1.3.0-alpha01

7 agosto 2024

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.3.0-alpha01 e androidx.savedstate:savedstate-ktx:1.3.0-alpha01. La versione 1.3.0-alpha01 contiene questi commit.

Modifiche alle API

  • Le estensioni kotlin savedstate-ktx sono state spostate nel modulo dello stato salvato di base. (I1cc18, b/274803094)

Nota:

  • Aggiorna compileSdk a 35 (5dc41be)

Versione 1.2.1

Versione 1.2.1

22 marzo 2023

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.2.1 e androidx.savedstate:savedstate-ktx:1.2.1. La versione 1.2.1 contiene questi commit.

Aggiornamenti delle dipendenze

Versione 1.2.0

Versione 1.2.0

29 giugno 2022

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.2.0 e androidx.savedstate:savedstate-ktx:1.2.0. La versione 1.2.0 contiene questi commit.

Modifiche importanti dalla versione 1.1.0

  • SavedStateRegistryController ora consente l'allegato anticipato di SavedStateRegistry tramite performAttach().
  • Ora puoi recuperare un SavedStateProvider registrato in precedenza da un SavedStateRegistry tramite getSavedStateProvider().
  • La libreria SavedState è stata riscritta in Kotlin.
    • Per SavedStateRegistryOwner, si tratta di una modifica non compatibile con l'origine per le classi scritte in Kotlin. Ora devi eseguire l'override della proprietà savedStateRegistry anziché implementare la funzione getSavedStateRegistry() precedente.
    • Per ViewTreeSavedStateRegistryOwner, si tratta di una modifica non compatibile con l'origine per le classi scritte in Kotlin: ora devi importare e utilizzare direttamente i metodi di estensione Kotlin su View di androidx.savedstate.setViewTreeSavedStateRegistryOwner e androidx.savedstate.findViewTreeSavedStateRegistryOwner per impostare e trovare un proprietario impostato in precedenza. Sostituisce l'API savedstate-ktx di findViewTreeSavedStateRegistryOwner.

Cambiamenti del comportamento

  • SavedStateRegistry non salva più un bundle vuoto se non esiste uno stato da salvare.

Versione 1.2.0-rc01

11 maggio 2022

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.2.0-rc01 e androidx.savedstate:savedstate-ktx:1.2.0-rc01. La versione 1.2.0-rc01 contiene questi commit.

Modifiche alla documentazione

  • I Kdocs SavedStateRegistryOwner sono stati aggiornati per chiarire le responsabilità e il contratto del proprietario in merito alla modalità di implementazione dell'interfaccia o al momento in cui deve chiamare i metodi su SavedStateRegistryController. (Iefc95, b/228887344)

Versione 1.2.0-beta01

20 aprile 2022

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.2.0-beta01 e androidx.savedstate:savedstate-ktx:1.2.0-beta01. La versione 1.2.0-beta01 contiene questi commit.

Modifiche alle API

  • I corsi SavedStateRegistry e ViewTreeSavedStateRegistryOwner sono stati riscritti in Kotlin. Per ViewTreeSavedStateRegistryOwner, si tratta di una modifica non compatibile con l'origine per le classi scritte in Kotlin: ora devi importare e utilizzare direttamente i metodi di estensione Kotlin su View di androidx.savedstate.setViewTreeSavedStateRegistryOwner e androidx.savedstate.findViewTreeSavedStateRegistryOwner per impostare e trovare un proprietario impostato in precedenza. Sostituisce l'API savedstate-ktx di findViewTreeSavedStateRegistryOwner. È compatibile con i file binari e rimane compatibile con il codice sorgente per le implementazioni scritte nel linguaggio di programmazione Java. (b/220191285)

Versione 1.2.0-alpha02

6 aprile 2022

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.2.0-alpha02 e androidx.savedstate:savedstate-ktx:1.2.0-alpha02. La versione 1.2.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Ora puoi recuperare un SavedStateProvider registrato in precedenza da un SavedStateRegistry tramite getSavedStateProvider(). (I7ea47, b/215406268)

Modifiche alle API

  • I corsi SavedStateRegistryOwner, SavedStateRegistryController e Recreator sono stati riscritti in Kotlin. Per SavedStateRegistryOwner, si tratta di una modifica non compatibile con l'origine per le classi scritte in Kotlin. Ora devi eseguire l'override della proprietà savedStateRegistry anziché implementare la funzione getSavedStateRegistry() precedente. È compatibile con i file binari e il codice sorgente per implementazioni scritte nel linguaggio di programmazione Java. (b/220191285)

Versione 1.2.0-alpha01

26 gennaio 2022

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.2.0-alpha01 e androidx.savedstate:savedstate-ktx:1.2.0-alpha01. La versione 1.2.0-alpha01 contiene questi commit.

Nuove funzionalità

  • SavedStateRegistryController ora consente allegato iniziale di SavedStateRegistry tramite performAttach(). (Ice4bf)

Cambiamenti del comportamento

  • SavedStateRegistry non salva più un bundle vuoto se non esiste uno stato da salvare. (aosp/1896865, b/203457956)

Versione 1.1.0

Versione 1.1.0

10 febbraio 2021

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.1.0 e androidx.savedstate:savedstate-ktx:1.1.0. La versione 1.1.0 contiene questi commit.

Modifiche principali dalla versione 1.0.0

  • API ViewTreeSavedStateRegistryOwner: una nuova API ViewTreeSavedStateRegistryOwner.get(View) consente di recuperare l'elemento SavedStateRegistry contenitore specificato per un'istanza View. Per compilare correttamente questi campi, devi eseguire l'upgrade ad Attività 1.2.0, Frammento 1.3.0 e AppCompat 1.3.0-alpha01 o versioni successive.
  • savedstate-ktx artefatto: il nuovo artefatto savedstate-ktx è stato aggiunto con un'estensione Kotlin findViewTreeSavedStateRegistryOwner() per lavorare con ViewTreeSavedStateRegistryOwner.

Versione 1.1.0-rc01

16 dicembre 2020

androidx.savedstate:savedstate:1.1.0-rc01 e androidx.savedstate:savedstate-ktx:1.1.0-rc01 vengono rilasciate senza modifiche dal giorno 1.1.0-beta01. La versione 1.1.0-rc01 contiene questi commit.

Versione 1.1.0-beta01

1° ottobre 2020

androidx.savedstate:savedstate:1.1.0-beta01 e androidx.savedstate:savedstate-ktx:1.1.0-beta01 vengono rilasciate senza modifiche dal giorno 1.1.0-alpha01. La versione 1.1.0-beta01 contiene questi commit.

Versione 1.1.0-alpha01

20 maggio 2020

Vengono rilasciate le versioni androidx.savedstate:savedstate:1.1.0-alpha01 e androidx.savedstate:savedstate-ktx:1.1.0-alpha01. La versione 1.1.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Una nuova API ViewTreeSavedStateRegistryOwner.get(View) ti consente di recuperare l'elemento SavedStateRegistry contenitore data un'istanza View. Per completare correttamente i dati, devi eseguire l'upgrade ad Attività 1.2.0-alpha05, Frammento 1.3.0-alpha05 e AppCompat 1.3.0-alpha01. (aosp/1298679)
  • Il nuovo artefatto savedstate-ktx è stato aggiunto con un'estensione Kotlin findViewTreeSavedStateRegistryOwner() per lavorare con ViewTreeSavedStateRegistryOwner. (aosp/1299434)

Versione 1.0.0

Versione 1.0.0

5 settembre 2019

Viene rilasciato androidx.savedstate:savedstate:1.0.0. I commit inclusi in questa versione sono disponibili qui.

Funzionalità principali di SavedState 1.0.0

androidx.savedstate promosso a una release stabile. Si tratta di un insieme di API che consentono agli sviluppatori di eseguire il plug-in dei componenti nel processo restore / saveInstanceState. Il punto di ingresso principale dell'API è SavedStateRegistry, che consente di recuperare gli stati salvati in precedenza utilizzando consumeRestoredStateForKey e registrare un callback a registerSavedStateProvider per fornire uno stato salvato una volta richiesto dal sistema.

Versione 1.0.0-rc01

2 luglio 2019

Viene rilasciato androidx.savedstate:savedstate:1.0.0-rc01. I commit inclusi in questa versione sono disponibili qui.

Correzioni di bug

  • È stata corretta la regola di proGuard errata (b/132655499)

Versione 1.0.0-beta01

7 maggio 2019

Viene rilasciato androidx.savedstate:savedstate:1.0.0-beta01. I commit inclusi in questa versione sono disponibili qui.

Versione 1.0.0-alpha02

13 marzo 2019

Viene rilasciato androidx.savedstate:savedstate:1.0.0-alpha02. androidx.savedstate:savedstate combina gli artefatti androidx.savedstate:savedstate-bundle e androidx.savedstate:savedstate-common in un unico artefatto, perché è stato deciso di semplificare l'infrastruttura dello stato salvato e rimuovere i generici da SavedStateRegistry. Pertanto, non sono necessari moduli separati.

L'elenco completo dei commit inclusi in questa versione è disponibile qui.

Nuove funzionalità

  • Membri aggiunti: SavedStateRegistry.runOnNextRecreaction(Class<? extends AutoRecreated> clazz ) Verrà creata un'istanza della classe specificata e il metodo AutoRecreated.onRecreated verrà eseguito al riavvio del componente proprietario.

Modifiche alle API

  • Generiche rimosse da SavedStateRegistry<T>
  • AbstractSavedStateRegistry e I file BundlableSavedStateRegistry sono stati rimossi. Usa invece SavedStateRegistry semplici
  • BundleSavedStateRegistryOwner è stato rinominato SavedStateRegistryOwner

Versione 1.0.0-alpha01

17 dicembre 2018

Questa è la prima release di SavedState.

Nuove funzionalità

androidx.savedstate è un nuovo insieme di API alpha che consente agli sviluppatori di eseguire il plug-in dei componenti per il processo di ripristino / saveInstanceState. Il punto di ingresso principale dell'API è SavedStateRegistry<T>, che fornisce un modo per recuperare lo stato salvato in precedenza tramite consumeRestoredStateForKey e registrare un callback a registerSavedStateProvider per fornire uno stato salvato una volta richiesto dal sistema.