Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

399
Visualizações
¿Cómo hacer que el ciclo de vida de viewModel funcione para AndroidX-Lifecycle-viewModel-SavedState (con Jetpack Compose)?

Mi configuración (subconjunto relevante):

  • Complemento de Android Gradle 7.1.2
  • androidx.lifecycle:lifecycle-viewmodel-savedstate 2.4.1
  • androidx.actividad:actividad-componer 1.4.0
  • androidx.compose. * 1.2.0-alfa04
  • androidx.navigation:navegación-componer 2.4.1

Estoy tratando de mantener el estado de la interfaz de usuario mejorando las capacidades de mi modelo de vista vinculado a la ViewModel para aprovechar el estado guardado del modelo de vista del ciclo de vida. Básicamente se ve así:

 class MySavedStateViewModel(private val savedStateHandle: SavedStateHandle) : ViewModel() { init { viewModelScope.launch { // Logic to load data from savedStateHandle } } fun saveData() { // Logic to save data to savedStateHandle } }

Creo el ViewModel dentro de un componible, que se ve así:

 val mySavedStateViewModel: MySavedStateViewModel by activityBoundViewModel( factoryProducer = { MySavedStateViewModelFactory(context as ComponentActivity) } )

MySavedStateViewModelFactory se ve así:

 class MySavedStateViewModelFactory( savedStateRegistryOwner: SavedStateRegistryOwner, bundle: Bundle? = null ) : MySavedStateViewModelFactory(savedStateRegistryOwner, bundle) { @Suppress("UNCHECKED_CAST") override fun <T : ViewModel> create(key: String, modelClass: Class<T>, handle: SavedStateHandle): T { val viewModel = MySavedStateViewModel(savedStateHandle = handle) return viewModel as T } }

Parece que SavedStateHandle se actualiza correctamente cuando uso la aplicación, pero cuando la elimino y la vuelvo a iniciar, los datos se pierden.

¿Qué necesito cambiar para que la persistencia funcione?

Relacionado pero una publicación anterior: SavedState ViewModel usando SavedStateViewModelFactory

over 4 years ago · Santiago Trujillo
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda