将媒体项添加到MediaBrowserService

时间:2018-06-27 16:15:24

标签: java android media-player audio-player mediabrowserservice android-music-player

我正在使用这两个示例(Android MediaBrowserService SampleUniversal Music Player)为示例构建适用于Android的音乐播放器。 我注意到在启动时都加载了媒体信息,并将其添加到媒体浏览器中。两者都有在启动时可用的完整媒体列表。

但是,如果我想将媒体动态添加到播放器队列中怎么办?

例如,我正在使用Spotify's Web API根据用户的查询来检索曲目列表。除其他事项外,它还返回指向该曲目的30秒预览的链接。据我了解,我需要创建一个包含该轨道的MediaMetadata对象。

但是,然后我应该如何将此信息添加到MediaBrowserService?所需的行为是,当用户单击列表(RecyclerView)中的曲目之一的播放按钮时,仅播放该曲目。另外,我不使用浏览组件来表示内容层次结构。

如何实现此行为?我应该阅读哪些参考书?

谢谢。

1 个答案:

答案 0 :(得分:0)

我的想法是,如果您使用的是MediaControllerCompat,则可以根据配置的对象轻松调用MediaControllerCompat.getMediaController(Activity).getTransportControls().playFromUrl(Url)playFromMediaId(String)。 您必须已经设置了媒体会话和MediaSessionCompat.Callback。