Junior — Middle
Как да инициираме изпълнението на корутина в рамките на ViewModel?
sobes.tech AI
Отговор от AI
В Android за стартиране на корутина в ViewModel обикновено се използва viewModelScope, който автоматично отменя корутините при унищожаване на ViewModel.
Пример за стартиране на корутина:
class MyViewModel : ViewModel() {
fun loadData() {
viewModelScope.launch {
// Тук можете да изпълнявате асинхронни операции
val data = repository.getData()
// Актуализирайте LiveData или състояние
}
}
}
viewModelScope е CoroutineScope, свързан с жизнения цикъл на ViewModel, което помага да се избегнат течове на памет и неправилно поведение при унищожаване на компонента.