Pull to refresh
3
0
Дмитрий Симаков@dmitriy_simakov

Android разработчик

Send message
  1. Думаю целиком сохранять UiState не стоит, часть стэйта может быть восстановлена путём повторного запроса к бэку. Главное сохранить то, что требуется для восстановления стэка. В остальном нужно ориентироваться на бизнесс трбования. Ну и отдельно подумать по поводу чувствительных данных.

  2. Да, верно. Тут нужно решить с бизнесом и командой, готовы ли вы тратить время разработки на то, чтобы обрабатывать восстановление приложения. Разумеется это будет работать, только если на всех экранах в стэке должным образом сохраняется состояние.

По хорошему данные вьюмодели, которые не могут быть повторно загружены нужно тоже сериализовать и сохранять (обычно при помощи SavedStateHandle). К сожалению многие на это просто забивают и поэтому приложения восстанавливаются с потерей всех данных и стэка.

rememberNavBackStack сериализует стэк навигации. Благодаря этому стэк может быть восстановлен после смерти процесса.

Если не использовать rememberNavBackStack, то юзера выкинет на начальный экран.

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity

Specialization

Разработчик мобильных приложений
Старший
From 300,000 ₽
Kotlin Multiplatform
Jetpack Compose
Kotlin
Android SDK
MVVM
Dagger 2
Coroutines
Clean Architecture
Flow