Ответ
remember сохраняет значение только на время жизни композиции (пока активен Composable). При изменении конфигурации (например, повороте экрана) значение сбрасывается.
rememberSaveable сохраняет значение даже при изменении конфигурации, используя механизмы сохранения состояния (Bundle, Saver). Подходит для сохранения UI-состояния.
var counter1 by remember { mutableStateOf(0) } // Сбросится при повороте
var counter2 by rememberSaveable { mutableStateOf(0) } // Сохранится
Ключевые отличия:
rememberSaveableпереживает изменения конфигурации- Для сложных объектов в
rememberSaveableнужно реализовать Saver rememberлегковеснее, но менее устойчив