如何将扬声器音量设置为最低?

How to set speaker volume to lowest?

我需要通过音频管理器将扬声器音量设置为最低。我需要最低音量指数。

AudioManager audioManager = 
    (AudioManager)getSystemService(Context.AUDIO_SERVICE);

audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,
                             [int value] = ?,
                             0);

我搜索了 SO,但没有找到任何有用的东西。

你可以通过下面的代码来完成

audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                    AudioManager.ADJUST_LOWER, 0);
audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
audio.adjustStreamVolume(AudioManager.STREAM_MUSIC,
        AudioManager.ADJUST_LOWER, 
        AudioManager.FLAG_SHOW_UI);
private AudioManager audio;

onCreate 内部:

audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

覆盖 onKeyDown:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
    audio.adjustStreamVolume(AudioManager.STREAM_MUSIC,
            AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);
    return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
    audio.adjustStreamVolume(AudioManager.STREAM_MUSIC,
            AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI);
    return true;
default:
    return false;
}
}