我正在为 Android 构建音乐播放器,使用这两个示例(Android MediaBrowserService Sample 和 Universal Music Player)作为示例。 我注意到启动时加载媒体信息并将其添加到媒体浏览器。两者在启动时都有完整的媒体列表。
但是如果我想动态地将媒体添加到播放器队列怎么办?
例如,我正在使用 Spotify's Web API根据用户的查询检索轨道列表。除其他事项外,它会返回指向 30 秒轨道的预览的链接。据我所知,我需要创建一个包含此轨道的 MediaMetadata 对象。
但是,我应该如何将此信息添加到 MediaBrowserService?所需的行为是,当用户单击列表 (RecyclerView) 中其中一首轨道的播放按钮时,仅播放该轨道。此外,我没有使用浏览组件来表示内容层次结构。
我怎样才能实现这个行为?我应该阅读哪些引用资料?
提前致谢。
最佳答案
我的想法是,如果您正在使用 MediaControllerCompat,那么您可以轻松调用 MediaControllerCompat.getMediaController(Activity).getTransportControls().playFromUrl(Url)
或 playFromMediaId(String)
取决于您配置的内容。
您必须为此设置媒体 session 和 MediaSessionCompat.Callback。
关于java - 将媒体项添加到 MediaBrowserService,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51067310/