InvisibleSessionManager.kt fixed
This commit is contained in:
parent
e421430f0b
commit
8eb199757c
1 changed files with 8 additions and 5 deletions
|
@ -8,18 +8,21 @@ import kotlin.time.Duration.Companion.seconds
|
||||||
@Singleton
|
@Singleton
|
||||||
object InvisibleSessionManager {
|
object InvisibleSessionManager {
|
||||||
private var viewModel: SessionViewModel? = null
|
private var viewModel: SessionViewModel? = null
|
||||||
private var mediaPlayer: MediaPlayer? = null
|
private lateinit var mediaPlayer: MediaPlayer
|
||||||
|
|
||||||
fun setParameters(viewModel: SessionViewModel, mediaplayer: MediaPlayer) {
|
fun setParameters(viewModel: SessionViewModel, mediaplayer: MediaPlayer) {
|
||||||
this.viewModel = viewModel
|
this.viewModel = viewModel
|
||||||
|
this.mediaPlayer = mediaplayer
|
||||||
}
|
}
|
||||||
|
|
||||||
suspend fun updateTimer() {
|
suspend fun updateTimer() {
|
||||||
if (viewModel != null) {
|
viewModel?.let {
|
||||||
while (true) {
|
while (!it.getTimer().hasEnded()) {
|
||||||
delay(1.seconds)
|
delay(1.seconds)
|
||||||
viewModel!!.getTimer().tick()
|
it.getTimer().tick()
|
||||||
|
if (it.getTimer().hasCurrentCountdownEnded()) {
|
||||||
|
mediaPlayer.start()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue