1

我尝试浏览网络以查看 MediaSessionManager 的作用和用途以及阅读 RemoteController(自 API 21 以来已弃用),因此我可以查看这些 api 是否可以解决我的问题。

目前,我正在使用 AudioManger 并发送关键事件以停止/暂停/播放来自其他音乐播放器的当前音频......它确实完成了这项工作。现在我想知道它是否可以用于媒体播放器,例如播放视频的 YouTube 应用程序,而我从其他设备上的应用程序可以像遥控器一样控制第二台设备上的视频播放。

我最终阅读了MediaSessionManager。它为当前正在播放的音乐播放器提供所有活动的媒体会话。我不确定它是否是解决上述情况的正确解决方案。由于我正在使用 Android 4.4.2,我认为 MediaSessionManager 可能不是正确的方法,所以我找到了一个名为 RemoteController 的东西,但不确定它是如何工作的,以及它是否有助于解决我的问题

这里有太多东西,我不知道从哪里开始。

4

2 回答 2

2

两者RemoteController以及可通过MediaSessionManagerMediaController检索的实例都是本地的- 它们允许设备上的一个应用程序控制另一个应用程序的播放。

如果您仅支持 API 21+ 设备,MediaSessionManager则比 更容易使用和更可靠RemoteController,但如果您还想支持 KitKat 设备,那么除了RemoteController.

当然,一旦用户在您想要控制的设备上启用了NotificationListenerService,您就可以构建您想要将媒体状态发送到其他控制设备的任何设备到设备的通信协议,并将命令发送回您想要控制的设备。但是,该基础架构将是您的应用程序所独有的 - 没有内置的类可以做到这一点。

于 2016-11-12T04:33:07.160 回答
0

您可以使用以下方法轻松创建待处理的意图以由接收控制器处理

MediaButtonReceiver.buildMediaButtonPendingIntent()

并添加

MediaButtonReceiver.handleIntent()

在您的接收者代码中

于 2016-11-12T19:55:48.993 回答