我正在使用 ExoPlayer Google Cast 扩展 v2.8.4。使用 CastPlayer 播放内容时,设备的物理音量按钮应控制接收设备的音量。当 CastPlayer 包含在 Activity 中时,这将按预期运行。但是,当 CastPlayer 包含在服务(例如 MediaBrowserServiceCompat)中时,物理音量按钮会更改发送方设备的媒体音量。
我创建了 2 个示例项目来演示该问题:
- CastVolumeControlTest在投射时显示正确的音量控制流行为。
- CastVolumeControlServiceTest在投射时显示不正确的音量控制流行为。
如下图所示,投射设备音量确实出现在完整音量控制视图中,但当 CastPlayer 处于服务状态时,手机的媒体音量是活动控制流。
有没有办法在服务实现中设置正确的音量控制流?