java - 将媒体项添加到 MediaBrowserService

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

我正在为 Android 构建音乐播放器,使用这两个示例(Android MediaBrowserService SampleUniversal 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/

相关文章:

objective-c - 找不到 MediaPlayer/Mediaplayer.h 文件

java - 单击按钮更改 TextView LayoutParameters

java - 从一个线程中退出

android - 如何以编程方式打开 Android 6.0 (Marshmallow) 上特定应用的权限屏幕?

android - 使用现有的 MediaPlayer 更改音频播放的数据源?

Android:MediaPlayer 无缝或无缝视频播放

java - Java 中的日期和时间

java - 将项目插入列表,对其进行排序并在插入后检索项目的索引

java - 未找到 PhoneGap/Cordova "javac -version"。

android - 通过一项 Activity 获得调查中的所有问题和答案,并通过Kotlin发送电子邮件