Activity не может "пережить" изменение конфигурации (например поворот экрана). Это потому, что при изменении конфигурации приложение должно подобрать наиболее подходящее к новой конфигурации состояние, а для этого Activity должна быть пересоздана. Возникает проблема: если хранить текущее состояние UI в Activity, то при смене конфигурации текущее состояние UI будет утеряно. ViewModel приходит на помощь, она входит в инструментарий Android Jetpack, не уничтожается при изменении конфигурации и поэтому лучшим образом подходит для хранения состояния и бизнес логики для UI. SavedStateHandle Использование SavedStateHandle позволяет сохранить состояние UI не только при изменении конфигурации, но и при пересоздании процесса. Как это выглядит по шагам: SavedStateHandle это Map (ключ - значение), которая хранит состояние UI во время уничтожения процесса системой. SavedStateHandle сериализуется и записывается на диск во время уничтожения процесса. Обладает ограниченными возможностями для хране