播放声音静音其他应用程序

时间:2015-08-21 07:12:49

标签: java android audio android-mediaplayer

我想知道是否有人可以指出我正确的方向。我正在为Android手机做间隔计时器应用程序,以便在间歇训练时使用。 在某些时间间隔我想静音其他应用程序(比如媒体播放器,因为我在训练时听音乐),播放自定义声音(不是任何默认通知声音),然后再取消静音其他应用程序。我希望如果这种静音/取消静音是逐渐的,那么它就不会是音乐中的“切割”。我已经阅读了一下,我无法决定最好的方法是通过“Ringtonemanager” “,”Notificationmanager“或只是通过媒体播放器播放? 我之前从未做过任何声音,所以任何帮助都非常感激。 托马斯

2 个答案:

答案 0 :(得分:2)

如果您想要静音其他应用,则需要获得音频焦点。Managing Audio Focus

答案 1 :(得分:1)

您可以通过以下方式将其他应用程序静音:

AudioManager am=context.getSystemService(Context.AUDIO_SERVICE);
int result=am.requestAudioFocus(listener,AudioManager.STREAM_MUSIC,
                  AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSICVE);

result == AudioManager.AUDIOFOCUS_REQUEST_GRANTED表示您的应用程序现在具有独占的音频焦点,所有其他应用程序都应该静音。