SavedState
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
20 de abril de 2022 | 1.1.0 | - | 1.2.0-beta01 | - |
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.1.0" // Kotlin implementation "androidx.savedstate:savedstate-ktx:1.1.0" }
Kotlin
dependencies { // Java language implementation implementation("androidx.savedstate:savedstate:1.1.0") // Kotlin implementation("androidx.savedstate:savedstate-ktx:1.1.0") }
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 en esta biblioteca antes de crear uno nuevo. Para agregar tu voto a un error existente, haz 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.2.0
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 artículo.
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.