SavedState
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
7 de agosto de 2024 | 1.2.1 | - | - | 1.3.0-alpha01 |
Cómo declarar dependencias
Para agregar una dependencia en SavedState, debes agregar el repositorio de Maven de Google a tu proyecto. Consulta el repositorio de Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle
de tu app o módulo:
Groovy
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") }
Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
Versión 1.3
Versión 1.3.0-alpha01
7 de agosto de 2024
Lanzamiento de androidx.savedstate:savedstate:1.3.0-alpha01
y androidx.savedstate:savedstate-ktx:1.3.0-alpha01
. La versión 1.3.0-alpha01 contiene estas confirmaciones.
Cambios en la API
- Las extensiones de Kotlin
savedstate-ktx
ahora se movieron al módulo savedstate base. (I1cc18, b/274803094).
Nota
- Actualiza
compileSdk
a 35 (5dc41be).
Versión 1.2.1
Versión 1.2.1
22 de marzo de 2023
Lanzamiento de androidx.savedstate:savedstate:1.2.1
y androidx.savedstate:savedstate-ktx:1.2.1
. La versión 1.2.1 contiene estas confirmaciones.
Actualizaciones de dependencias
SavedState
ahora depende de Lifecycle2.6.1
(c1f621).
Versión 1.2.0
Versión 1.2.0
29 de junio de 2022
Lanzamiento de androidx.savedstate:savedstate:1.2.0
y androidx.savedstate:savedstate-ktx:1.2.0
. La versión 1.2.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.1.0
SavedStateRegistryController
ahora permite la conexión anticipada deSavedStateRegistry
medianteperformAttach()
.- Ahora puedes recuperar un
SavedStateProvider
registrado previamente de unSavedStateRegistry
a través degetSavedStateProvider()
. - Se reescribió la biblioteca
SavedState
en Kotlin.- En el caso de
SavedStateRegistryOwner
, este es un cambio incompatible de la fuente para esas clases escritas en Kotlin; ahora debes anular la propiedadsavedStateRegistry
en lugar de implementar la funcióngetSavedStateRegistry()
anterior. - En el caso de
ViewTreeSavedStateRegistryOwner
, este es un cambio incompatible de la fuente para esas clases escritas en Kotlin. Ahora debes importar y usar directamente los métodos de extensión de Kotlin enView
deandroidx.savedstate.setViewTreeSavedStateRegistryOwner
yandroidx.savedstate.findViewTreeSavedStateRegistryOwner
para establecer y encontrar un propietario que se haya configurado con anterioridad. Este cambio reemplaza la API desavedstate-ktx
defindViewTreeSavedStateRegistryOwner
.
- En el caso de
Cambios en el comportamiento
SavedStateRegistry
ya no guarda un Bundle vacío si no hay ningún estado para guardar.
Versión 1.2.0-rc01
11 de mayo de 2022
Lanzamiento de androidx.savedstate:savedstate:1.2.0-rc01
y androidx.savedstate:savedstate-ktx:1.2.0-rc01
. La versión 1.2.0-rc01 contiene estas confirmaciones.
Cambios en la documentación
- Se actualizaron los Kdocs de
SavedStateRegistryOwner
para aclarar las responsabilidades y los contratos que tiene el propietario sobre la implementación de la interfaz o cuándo debe llamar a los métodos enSavedStateRegistryController
(Iefc95, b/228887344).
Versión 1.2.0-beta01
20 de abril de 2022
Lanzamiento de androidx.savedstate:savedstate:1.2.0-beta01
y androidx.savedstate:savedstate-ktx:1.2.0-beta01
. La versión 1.2.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Se reescribieron las clases
SavedStateRegistry
yViewTreeSavedStateRegistryOwner
en Kotlin. En el caso deViewTreeSavedStateRegistryOwner
, este es un cambio incompatible de la fuente para esas clases escritas en Kotlin. Ahora debes importar y usar directamente los métodos de extensión de Kotlin enView
deandroidx.savedstate.setViewTreeSavedStateRegistryOwner
yandroidx.savedstate.findViewTreeSavedStateRegistryOwner
para establecer y encontrar un propietario que se haya configurado con anterioridad. Este cambio reemplaza la API desavedstate-ktx
defindViewTreeSavedStateRegistryOwner
. Esto es compatible a nivel binario y de la fuente para implementaciones escritas en el lenguaje de programación Java (b/220191285).
Versión 1.2.0-alpha02
6 de abril de 2022
Lanzamiento de androidx.savedstate:savedstate:1.2.0-alpha02
y androidx.savedstate:savedstate-ktx:1.2.0-alpha02
. La versión 1.2.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- Ahora puedes recuperar un
SavedStateProvider
registrado previamente de unSavedStateRegistry
a través degetSavedStateProvider()
(I7ea47, b/215406268).
Cambios en la API
- Se reescribieron las clases
SavedStateRegistryOwner
,SavedStateRegistryController
yRecreator
en Kotlin. En el caso deSavedStateRegistryOwner
, este es un cambio incompatible de la fuente para esas clases escritas en Kotlin; ahora debes anular la propiedadsavedStateRegistry
en lugar de implementar la funcióngetSavedStateRegistry()
anterior. Esto es compatible a nivel binario y de fuente para implementaciones escritas en el lenguaje de programación Java (b/220191285).
Versión 1.2.0-alpha01
26 de enero de 2022
Lanzamiento de androidx.savedstate:savedstate:1.2.0-alpha01
y androidx.savedstate:savedstate-ktx:1.2.0-alpha01
. La versión 1.2.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
SavedStateRegistryController
ahora permite la conexión anticipada deSavedStateRegistry
medianteperformAttach()
(Ice4bf).
Cambios en el comportamiento
SavedStateRegistry
ya no guarda un Bundle vacío si no hay ningún estado para guardar. (aosp/1896865, b/203457956).
Versión 1.1.0
Versión 1.1.0
10 de febrero de 2021
Lanzamiento de androidx.savedstate:savedstate:1.1.0
y androidx.savedstate:savedstate-ktx:1.1.0
. La versión 1.1.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.0.0
- API de
ViewTreeSavedStateRegistryOwner
: Una nueva API deViewTreeSavedStateRegistryOwner.get(View)
te permite recuperar elSavedStateRegistry
contenedor en una determinada instancia deView
. Debes actualizar a Activity1.2.0
, Fragment1.3.0
yAppCompat1.3.0-alpha01
o versiones posteriores para que la propagación se realice correctamente. - Artefacto
savedstate-ktx
: Se agregó el nuevo artefactosavedstate-ktx
con una extensión de KotlinfindViewTreeSavedStateRegistryOwner()
a fin de trabajar conViewTreeSavedStateRegistryOwner
.
Versión 1.1.0-rc01
16 de diciembre de 2020
Lanzamiento de androidx.savedstate:savedstate:1.1.0-rc01
y androidx.savedstate:savedstate-ktx:1.1.0-rc01
sin cambios desde 1.1.0-beta01
. La versión 1.1.0-rc01 contiene estas confirmaciones.
Versión 1.1.0-beta01
1 de octubre de 2020
Lanzamiento de androidx.savedstate:savedstate:1.1.0-beta01
y androidx.savedstate:savedstate-ktx:1.1.0-beta01
sin cambios desde 1.1.0-alpha01
. La versión 1.1.0-beta01 contiene estas confirmaciones.
Versión 1.1.0-alpha01
20 de mayo de 2020
Lanzamiento de androidx.savedstate:savedstate:1.1.0-alpha01
y androidx.savedstate:savedstate-ktx:1.1.0-alpha01
. La versión 1.1.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Una nueva API de
ViewTreeSavedStateRegistryOwner.get(View)
te permite recuperar el objetoSavedStateRegistry
contenedor dado que tiene una instancia deView
. Debes actualizar a Activity1.2.0-alpha05
, Fragment1.3.0-alpha05
y AppCompat1.3.0-alpha01
para completarlo correctamente (aosp/1298679). - Se agregó el artefacto
savedstate-ktx
nuevo con una extensión de KotlinfindViewTreeSavedStateRegistryOwner()
para trabajar conViewTreeSavedStateRegistryOwner
(aosp/1299434).
Versión 1.0.0
Versión 1.0.0
5 de septiembre de 2019
Lanzamiento de androidx.savedstate:savedstate:1.0.0
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Funciones principales de SavedState 1.0.0
Se movió androidx.savedstate
a una versión estable. Este es un conjunto de API que permite a los desarrolladores agregar componentes al proceso restore/saveInstanceState. El punto de entrada principal de la API es SavedStateRegistry
, que proporciona una forma de recuperar estados guardados previamente usando consumeRestoredStateForKey
y registra una devolución de llamada a registerSavedStateProvider
para proporcionar un estado guardado una vez que el sistema lo solicita.
Versión 1.0.0-rc01
2 julio de 2019
Lanzamiento de androidx.savedstate:savedstate:1.0.0-rc01
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Correcciones de errores
- Se corrigió la regla de ProGuard incorrecta (b/132655499).
Versión 1.0.0-beta01
7 de mayo de 2019
Lanzamiento de androidx.savedstate:savedstate:1.0.0-beta01
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Versión 1.0.0-alpha02
13 de marzo de 2019
Lanzamiento de androidx.savedstate:savedstate:1.0.0-alpha02
. androidx.savedstate:savedstate
combina los artefactos androidx.savedstate:savedstate-bundle
y androidx.savedstate:savedstate-common
en un artefacto, ya que se decidió simplificar la infraestructura de estado guardado y quitar los elementos genéricos de SavedStateRegistry
. Por lo tanto, no hay necesidad de módulos separados.
Para obtener una lista completa de las confirmaciones incluidas en esta versión, consulta este artículo.
Nuevas funciones
- Se agregó
SavedStateRegistry.runOnNextRecreaction(Class<? extends AutoRecreated> clazz )
. Se creará la instancia de la clase determinada y se ejecutará el métodoAutoRecreated.onRecreated
cuando se reinicie el componente propietario.
Cambios en la API
- Se quitaron los elementos genéricos de
SavedStateRegistry<T>
. - Se quitaron AbstractSavedStateRegistry y BundlableSavedStateRegistry. En su lugar, usa
SavedStateRegistry
. - Se cambió el nombre de
BundleSavedStateRegistryOwner
porSavedStateRegistryOwner
.
Versión 1.0.0-alpha01
17 de diciembre de 2018
Esta es la primera versión de SavedState
.
Nuevas funciones
androidx.savedstate
es un nuevo conjunto de API Alfa que permite a los desarrolladores agregar componentes al proceso restore/saveInstanceState. El punto de entrada principal de la API es SavedStateRegistry<T>
, que proporciona una manera de recuperar un estado guardado anteriormente mediante consumeRestoredStateForKey
y registra una devolución de llamada a registerSavedStateProvider
para proporcionar un estado guardado una vez que el sistema lo solicite.