reactormonk
09/20/2023, 5:34 PMvar lifecycleObserver: LifecycleObserver
lifecycleObserver = LifecycleEventObserver { _, event ->
when (event) {
Lifecycle.Event.ON_START -> player.play()
Lifecycle.Event.ON_STOP -> player.pause()
Lifecycle.Event.ON_DESTROY -> {
player.release()
lifecycleOwner.lifecycle.removeObserver(lifecycleObserver)
}
else -> {}
}
}
lifecycleOwner.lifecycle.addObserver(lifecycleObserver)
Pablichjenkov
09/20/2023, 6:00 PMreactormonk
09/20/2023, 6:01 PMvar removeObs = {}
val lifecycleObserver = LifecycleEventObserver { _, event ->
when (event) {
Lifecycle.Event.ON_START -> player.play()
Lifecycle.Event.ON_STOP -> player.pause()
Lifecycle.Event.ON_DESTROY -> {
player.release()
removeObs()
}
else -> {}
}
}
removeObs = {lifecycleOwner.lifecycle.removeObserver(lifecycleObserver)}
lifecycleOwner.lifecycle.addObserver(lifecycleObserver)
Pablichjenkov
09/20/2023, 6:06 PMreactormonk
09/20/2023, 6:06 PMIan Lake
09/20/2023, 7:11 PMON_DESTROY
, so you don't need to manually remove them at allIan Lake
09/20/2023, 7:12 PMreactormonk
09/20/2023, 7:13 PM