MusicRepository: ignore metadata updates for controllers other than the current

This commit is contained in:
MM20 2022-01-15 14:41:58 +01:00
parent 6ca440f553
commit 526f848f97
No known key found for this signature in database
GPG Key ID: 0B61A8F2DEAFA389

View File

@ -141,25 +141,26 @@ class MusicRepositoryImpl(
allowedCommands: SessionCommandGroup
) {
super.onConnected(controller, allowedCommands)
if (!controller.isConnected) return
if (controller != mediaController) return
updateMetadata(controller.currentMediaItem, controller.connectedToken?.packageName)
updateState(controller.playerState)
}
override fun onCurrentMediaItemChanged(controller: MediaController, item: MediaItem?) {
super.onCurrentMediaItemChanged(controller, item)
if (!controller.isConnected) return
if (controller != mediaController) return
updateMetadata(item, controller.connectedToken?.packageName)
}
override fun onPlayerStateChanged(controller: MediaController, state: Int) {
super.onPlayerStateChanged(controller, state)
if (!controller.isConnected) return
if (controller != mediaController) return
updateState(state)
}
override fun onDisconnected(controller: MediaController) {
super.onDisconnected(controller)
if (controller != mediaController) return
mediaController = null
}
}