将媒体项添加到 MediaBrowserService
Posted
技术标签:
【中文标题】将媒体项添加到 MediaBrowserService【英文标题】:Adding media item to MediaBrowserService 【发布时间】:2018-12-06 14:48:09 【问题描述】:我正在为 android 构建一个音乐播放器,使用这两个示例(Android MediaBrowserService Sample 和 Universal Music Player)作为示例。 我注意到在启动时加载媒体信息并将其添加到媒体浏览器。两者都在启动时提供完整的媒体列表。
但是如果我想动态地将媒体添加到播放器队列中呢?
例如,我使用Spotify's Web API 根据用户的查询检索曲目列表。除其他外,它还返回一个指向 30 秒预览曲目的链接。据我了解,我需要创建一个包含此轨道的 MediaMetadata 对象。
但是,我应该如何将此信息添加到 MediaBrowserService?期望的行为是,当用户单击列表(RecyclerView)中曲目之一的播放按钮时,仅播放该曲目。另外,我没有使用浏览组件来表示内容层次结构。
如何实现这种行为?我应该阅读哪些参考资料?
提前致谢。
【问题讨论】:
试过notifyChildrenChanged
?
@pskink 谢谢。我会调查的。
这方面有什么更新吗?
【参考方案1】:
我的想法是,如果您使用的是 MediaControllerCompat,那么您可以轻松调用 MediaControllerCompat.getMediaController(Activity).getTransportControls().playFromUrl(Url)
或 playFromMediaId(String)
,具体取决于您配置的内容。
您必须已经设置了您的媒体会话和 MediaSessionCompat.Callback。
【讨论】:
以上是关于将媒体项添加到 MediaBrowserService的主要内容,如果未能解决你的问题,请参考以下文章