我正在创建一个仅供学习的测验应用,而且我遇到了问题。
在我的mainactivity
我有一个媒体播放器。它甚至通过其他活动播放音乐,我有一个静音按钮来停止音乐。当我成功地找到正确的答案时,我也有一个声音效果(在其他活动的问题上)。但是当我按静音按钮时,我不知道如何将此SFX与背景音乐静音。任何提示? ;)
如果有办法将我的整个应用程序静音,那就太好了。我找到了一些静音的方法,但这种方式会使整个系统静音。而它的
AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
audioManager.setStreamMute(AudioManager.STREAM_MUSIC, false);
答案 0 :(得分:0)
试试这个。它可能对你有帮助。
AudioManager manager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
manager.setStreamVolume(AudioManager.STREAM_ALARM, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
答案 1 :(得分:0)
您可以使用AudioManager.setStreamMute()。请随意使用以下代码。
//mute audio
AudioManager amanager=(AudioManager)getSystemService(Context.AUDIO_SERVICE);
amanager.setStreamMute(AudioManager.STREAM_NOTIFICATION, true);
//unmute audio
AudioManager amanager=(AudioManager)getSystemService(Context.AUDIO_SERVICE);
amanager.setStreamMute(AudioManager.STREAM_NOTIFICATION, false);
答案 2 :(得分:0)
如果您只想将正在运行的应用声音静音,那么最好这样做:
MediaPlayer mp = MediaPlayer.create(context, R.raw.sound_file_1); //Use your mediaplayer instance instead of this. Also maintain a single instance of mediaplayer for the entire app.
mp.start();
mp.setvolume(0,0);
<强>&安培;取消静音或全音量
mp.setvolume(0,1);
参考: http://developer.android.com/reference/android/media/MediaPlayer.html#setVolume(float,浮动)