Junior — Middle
Hogyan indítható el egy coroutine végrehajtása egy ViewModel-ban?
sobes.tech MI
Válasz az MI-től
Androidben a coroutine elindításához a ViewModel-ban általában a viewModelScope-t használják, amely automatikusan megszakítja a coroutine-kat a ViewModel megsemmisítésekor.
Példa coroutine indítására:
class MyViewModel : ViewModel() {
fun loadData() {
viewModelScope.launch {
// Itt végezhet aszinkron műveleteket
val data = repository.getData()
// LiveData vagy állapot frissítése
}
}
}
A viewModelScope egy CoroutineScope, amely a ViewModel életciklusához van kötve, ez segít elkerülni a memória szivárgásokat és a helytelen viselkedést a komponens megsemmisítésekor.