我正在开发一个音乐应用程序,其中包括一个服务播放音乐,而其他应用程序正在运行。
为了欣赏音乐,只欣赏音乐,服务会将所有其他应用静音。为了做到这一点,它将STREAM_MUSIC静音并通过STREAM_VOICE_CALL播放音乐(找到解决方案来静音其他应用here)
由于服务使用STREAM_VOICE_CALL播放音乐,我正在尝试找到的方法是在播放声音时让音量按钮控制此流。
我已经尝试过:
在这一点上,我没有选择,任何帮助将不胜感激。谢谢!
答案 0 :(得分:3)
我个人不建议您使用STREAM_VOICE_CALL
,因为与媒体播放相比,建议将其用于语音通话。使用此功能可能会阻止您使用Android公开的功能进行媒体播放。
说过这个&考虑到您的用例,我认为您需要寻找与“媒体量”级别相比更改“通话量”级别。
查看音乐播放器库存应用中使用的MediaPlaybackService.java,并根据您的需要尝试自定义。
答案 1 :(得分:-1)
我自己没有尝试过。但看起来它应该工作。请试一试。
m_audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
setVolumeControlStream(AudioManager.STREAM_VOICE_CALL);
m_audioManager.setMode(AudioManager.MODE_IN_CALL);