当前位置: 代码迷 >> Android >> 请教自己的app播放音乐的时候,如何关掉其他应用的音乐
  详细解决方案

请教自己的app播放音乐的时候,如何关掉其他应用的音乐

热度:99   发布时间:2016-05-01 21:02:40.0
请问自己的app播放音乐的时候,怎么关掉其他应用的音乐
是做一个voip项目。通话过程中要求其他的音乐程序都停下来
开始用AudioFocus把系统播放器和酷狗停下来了,但是天天和FMRadio收音机停不下来
后来通过setStreanMute把Stream_MUSIC类型的声音设置为静音,天天动听停下来了,但是收音机停不下来
不知道大家有没有更好的办法!!

------解决方案--------------------
不能,除非这几个音乐程序有提供对外的控制接口。
------解决方案--------------------
AudioFocus的症结:不是所有程序都支持,有不支持的存在,就打破了完整性。

这么多天了,没别的思路和进展?
------解决方案--------------------
kill 杀掉进程。

------解决方案--------------------
看起来是因为不同的AP使用了不同的Audio Stream,仅仅获取到Stream_MUSIC的Focus并不够,你可以仔细参看那关于Audio Stream的部分内容:下面是我截取的内容,我觉得因为你不能确保那些其他的AP按规则来获取Stream(通常来说音乐类的AP都应该获取的是STREAM_MUSIC),那么想其他所有的AP都静音,也许只能靠遍历禁止下面所有Stream的办法。【奇怪,为什么天天动听与酷狗不是用的都是STREAM_MUSIC?】
int STREAM_ALARM The audio stream for alarms
int STREAM_DTMF The audio stream for DTMF Tones
int STREAM_MUSIC The audio stream for music playback
int STREAM_NOTIFICATION The audio stream for notifications
int STREAM_RING The audio stream for the phone ring
int STREAM_SYSTEM The audio stream for system sounds
int STREAM_VOICE_CALL The audio stream for phone calls
  相关解决方案