TGViewer
Мобильная разработка Мобильная разработка @mobi_dev · 13.2K subscribers
Post #4724 1.39K
Как сохранить экран Android после завершения процесса

Когда системе не хватает памяти, Android может завершить процесс приложения. При возвращении выбранная карточка или поля формы пропадут, если состояние осталось только во ViewModel.

SavedStateHandle хранит небольшое состояние интерфейса как пары ключей и значений. В примере на Kotlin и Compose идентификатор места записывается из ViewModel, а getStateFlow() возвращает поток состояния, который передаёт новое значение интерфейсу. При уходе с экрана запись очищается через null.

Так стоит сохранять идентификаторы, ввод формы и состояние навигации. Для больших объектов и долгого хранения нужны Room или DataStore. SavedStateHandle переживает системное завершение процесса и смену конфигурации, но не явное закрытие приложения. Код и рекомендации есть в разборе Atomic Object.
More from @mobi_dev
  1. Sep 20, 2026Как ProfilingManager на Android 15+ помогает искать причины тормозов в продакшене Profilin…
  2. Sep 20, 2026Как использовать свайп-действия вне List в SwiftUI В SwiftUI свайп-действия вроде удаления…
  3. Sep 20, 2026Как переносить сложные Android-экраны на Jetpack Compose: опыт TikTok Команда TikTok перен…
  4. Sep 19, 2026Как управлять кнопками панели инструментов в SwiftUI Одна и та же панель в SwiftUI ведёт с…
  5. Sep 19, 2026Как безопасно освобождать временные ресурсы с defer в Swift В Swift блок defer выполняется…
  6. Sep 19, 2026Как Flutter готовит приложения к новым версиям iOS Между WWDC и стабильным релизом iOS у к…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →