From 50939abfcab29b17716ffd0914ad4fb33fc6250b Mon Sep 17 00:00:00 2001 From: Alessio Attilio Date: Tue, 2 Jun 2026 00:37:38 +0200 Subject: [PATCH] fix(service): resolve UninitializedPropertyAccessException in onGetSession --- .../com/metrolist/music/playback/MusicService.kt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/src/main/kotlin/com/metrolist/music/playback/MusicService.kt b/app/src/main/kotlin/com/metrolist/music/playback/MusicService.kt index 7ecd7cde24..a0d58391ad 100644 --- a/app/src/main/kotlin/com/metrolist/music/playback/MusicService.kt +++ b/app/src/main/kotlin/com/metrolist/music/playback/MusicService.kt @@ -371,8 +371,8 @@ class MusicService : private var fadingPlayer: ExoPlayer? = null private var isCrossfading = false private var crossfadeJob: Job? = null - - private lateinit var mediaSession: MediaLibrarySession + private var isRunning = false + private var mediaSession: MediaLibrarySession? = null // Tracks if player has been properly initilized private val playerInitialized = MutableStateFlow(false) @@ -907,7 +907,7 @@ class MusicService : sleepTimer.player = newPlayer try { - (mediaSession as MediaSession).player = newPlayer + mediaSession?.let { (it as MediaSession).player = newPlayer } } catch (e: Exception) { Timber.tag(TAG).e(e, "Failed to swap player in MediaSession") } @@ -1408,7 +1408,7 @@ class MusicService : } private fun updateNotification() { - mediaSession.setCustomLayout( + mediaSession?.setCustomLayout( listOf( CommandButton .Builder() @@ -3824,7 +3824,7 @@ class MusicService : abandonAudioFocus() closeAudioEffectSession() mediaLibrarySessionCallback.release() - mediaSession.release() + mediaSession?.release() player.removeListener(this) player.removeListener(sleepTimer) playerSilenceProcessors.remove(player) @@ -4403,7 +4403,7 @@ class MusicService : sleepTimer.player = player try { - (mediaSession as MediaSession).player = player + mediaSession?.let { (it as MediaSession).player = player } } catch (e: Exception) { timber.log.Timber.e(e, "Failed to swap player in MediaSession") }