Set queue for mediaSession so that it (mostly next song) can be read by other apps
This commit is contained in:
parent
fcac420ac3
commit
8d81424365
2 changed files with 18 additions and 1 deletions
|
@ -1,6 +1,20 @@
|
|||
package code.name.monkey.retromusic.extensions
|
||||
|
||||
import android.support.v4.media.MediaDescriptionCompat
|
||||
import android.support.v4.media.session.MediaSessionCompat.QueueItem
|
||||
import code.name.monkey.retromusic.model.Song
|
||||
import code.name.monkey.retromusic.util.MusicUtil
|
||||
|
||||
val Song.uri get() = MusicUtil.getSongFileUri(songId = id)
|
||||
val Song.uri get() = MusicUtil.getSongFileUri(songId = id)
|
||||
|
||||
|
||||
fun ArrayList<Song>.toMediaSessionQueue(): List<QueueItem> {
|
||||
return map {
|
||||
val mediaDescription = MediaDescriptionCompat.Builder()
|
||||
.setMediaId(it.id.toString())
|
||||
.setTitle(it.title)
|
||||
.setSubtitle(it.artistName)
|
||||
.build()
|
||||
QueueItem(mediaDescription, it.hashCode().toLong())
|
||||
}
|
||||
}
|
||||
|
|
|
@ -56,6 +56,7 @@ import code.name.monkey.retromusic.appwidgets.*
|
|||
import code.name.monkey.retromusic.auto.AutoMediaIDHelper
|
||||
import code.name.monkey.retromusic.auto.AutoMusicProvider
|
||||
import code.name.monkey.retromusic.extensions.showToast
|
||||
import code.name.monkey.retromusic.extensions.toMediaSessionQueue
|
||||
import code.name.monkey.retromusic.glide.BlurTransformation
|
||||
import code.name.monkey.retromusic.glide.GlideApp
|
||||
import code.name.monkey.retromusic.glide.RetroGlideExtension.getDefaultTransition
|
||||
|
@ -1225,6 +1226,8 @@ class MusicService : MediaBrowserServiceCompat(),
|
|||
songPlayCountHelper.notifySongChanged(currentSong)
|
||||
}
|
||||
QUEUE_CHANGED -> {
|
||||
mediaSession?.setQueueTitle(getString(R.string.now_playing_queue))
|
||||
mediaSession?.setQueue(playingQueue.toMediaSessionQueue())
|
||||
updateMediaSessionMetaData() // because playing queue size might have changed
|
||||
saveState()
|
||||
if (playingQueue.size > 0) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue