Какие знаешь методы сохранения состояния

«Какие знаешь методы сохранения состояния» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

onSaveInstanceState() — сохраняет временные данные (например, введённый текст) при повороте экрана. Восстанавливается в onCreate() или onRestoreInstanceState().

override fun onSaveInstanceState(outState: Bundle) {
    super.onSaveInstanceState(outState)
    outState.putString("KEY_TEXT", editText.text.toString())
}

ViewModel — сохраняет данные при конфигурационных изменениях (живёт дольше Activity/Fragment).

SharedPreferences — для простых постоянных данных (настройки, логин).

Room/SQLite — для структурированных данных, требующих сложных запросов.

DataStore — современная замена SharedPreferences с поддержкой Kotlin Coroutines/Flow.

Файлы/External Storage — для больших данных (изображения, документы).