Куда функция remember сохраняет состояние

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

Ответ

Функция remember сохраняет состояние в памяти композейбл-функции на протяжении её жизненного цикла. Значение сохраняется до тех пор, пока композейбл остается в составе Composition. При рекомпозиции значение будет восстановлено, а при выходе из Composition — удалено.

Пример:

@Composable
fun Counter() {
    var count by remember { mutableStateOf(0) }
    Button(onClick = { count++ }) {
        Text("Clicked $count times")
    }
}

Важно: remember не сохраняет состояние при изменении конфигурации (например, повороте экрана). Для этого нужно использовать rememberSaveable.