fix: playback progress is not saved when leaving player
This commit is contained in:
parent
5b1830c88b
commit
9133b2a273
1 changed files with 12 additions and 10 deletions
|
@ -27,6 +27,7 @@ import dev.jdtech.jellyfin.utils.postDownloadPlaybackProgress
|
|||
import kotlinx.coroutines.DelicateCoroutinesApi
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.GlobalScope
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlinx.coroutines.withContext
|
||||
import timber.log.Timber
|
||||
|
@ -166,16 +167,17 @@ constructor(
|
|||
|
||||
@OptIn(DelicateCoroutinesApi::class)
|
||||
private fun releasePlayer() {
|
||||
player.let { player ->
|
||||
GlobalScope.launch {
|
||||
try {
|
||||
jellyfinRepository.postPlaybackStop(
|
||||
UUID.fromString(player.currentMediaItem?.mediaId),
|
||||
player.currentPosition.times(10000)
|
||||
)
|
||||
} catch (e: Exception) {
|
||||
Timber.e(e)
|
||||
}
|
||||
val mediaId = player.currentMediaItem?.mediaId
|
||||
val position = player.currentPosition.times(10000)
|
||||
GlobalScope.launch {
|
||||
delay(1000L)
|
||||
try {
|
||||
jellyfinRepository.postPlaybackStop(
|
||||
UUID.fromString(mediaId),
|
||||
position
|
||||
)
|
||||
} catch (e: Exception) {
|
||||
Timber.e(e)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue