我正在实现一个音频播放器,它使用MediaController和MediaSession类。我已经实现了传输控制(播放,暂停,倒带.)使用示例代码并实现MediaSession.Callback类来处理MediaController.TransportControls。还请注意,我是相对较新的Android开发。
我已经开始研究如何处理音频命令,并注意到MediaController已经定义了adjustVolume()和setVolumeTo()方法。
我的问题是:为什么没有音量命令(可能还有其他音频命令,比如BTBF,EQ设置.)以类似于传输命令的方式处理?换句话说,为什么没有一个MediaController.AudioControls类可以由MediaSession回调来处理呢?
我看到有一个MediaController.PlaybackInfo类,它提供有关音频的各种信息。在sendCommand类中还有一个MediaController ()方法,它由MediaSession.Callback中的onCommand()回调处理。类似地,在MediaController.TransportControls中定义了MediaController.TransportControls()方法,该方法由MediaSession.Callback中的onCustomAction()处理。我很想使用这些命令来调整音频播放的各个方面,但是我想确保我没有忽略那些实现这一点的类。看起来MediaSession类可能有额外的方法(额外的嵌套类?)要以类似于传输控件的方式处理音频控件,请执行以下操作。提前谢谢。吉姆
发布于 2015-01-20 22:50:09
MediaController公开的API或控件是与来自锁定屏幕、通知或耳机媒体按钮的远程控制有关的最常见的情况。
还请注意,可以在会话上设置一个VolumeProvider类来接收有关更改/ set的回调。如果没有此操作,则会话将处理卷的更新。
https://stackoverflow.com/questions/28034982
复制相似问题