diff --git a/app/src/main/java/com/futo/platformplayer/services/MediaPlaybackService.kt b/app/src/main/java/com/futo/platformplayer/services/MediaPlaybackService.kt index 77125de8..ddfa89e9 100644 --- a/app/src/main/java/com/futo/platformplayer/services/MediaPlaybackService.kt +++ b/app/src/main/java/com/futo/platformplayer/services/MediaPlaybackService.kt @@ -15,7 +15,9 @@ import android.media.AudioManager import android.media.AudioManager.OnAudioFocusChangeListener import android.media.MediaMetadata import android.os.Build +import android.os.Handler import android.os.IBinder +import android.os.Looper import android.os.SystemClock import android.support.v4.media.MediaMetadataCompat import android.support.v4.media.session.MediaSessionCompat @@ -57,6 +59,15 @@ class MediaPlaybackService : Service() { private var _audioFocusLossTime_ms: Long? = null private var _playbackState = PlaybackStateCompat.STATE_NONE; + private val _updateIntervalMs: Long = 5 * 60 * 1000 + private val _handler: Handler = Handler(Looper.getMainLooper()) + private val _updateRunnable: Runnable = object : Runnable { + override fun run() { + updateMediaSession(null) + _handler.postDelayed(this, _updateIntervalMs) + } + } + override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int { Logger.v(TAG, "onStartCommand"); @@ -74,6 +85,8 @@ class MediaPlaybackService : Service() { _callOnStarted?.invoke(this); _instance = this; + + _handler.postDelayed(_updateRunnable, _updateIntervalMs) } catch(ex: Throwable) { Logger.e(TAG, "Failed to start MediaPlaybackService due to: " + ex.message, ex); @@ -143,6 +156,7 @@ class MediaPlaybackService : Service() { override fun onDestroy() { Logger.v(TAG, "onDestroy"); _instance = null; + _handler.removeCallbacks(_updateRunnable) MediaControlReceiver.onPauseReceived.emit(); super.onDestroy(); } diff --git a/app/src/stable/assets/sources/spotify b/app/src/stable/assets/sources/spotify index 4e826dcb..c7000814 160000 --- a/app/src/stable/assets/sources/spotify +++ b/app/src/stable/assets/sources/spotify @@ -1 +1 @@ -Subproject commit 4e826dcb6a237313e32ec81b0e973a4f69c429c3 +Subproject commit c700081466038ee4782610feaa05cd4d34d024d8 diff --git a/app/src/unstable/assets/sources/spotify b/app/src/unstable/assets/sources/spotify index 4e826dcb..c7000814 160000 --- a/app/src/unstable/assets/sources/spotify +++ b/app/src/unstable/assets/sources/spotify @@ -1 +1 @@ -Subproject commit 4e826dcb6a237313e32ec81b0e973a4f69c429c3 +Subproject commit c700081466038ee4782610feaa05cd4d34d024d8