How do you get/set media volume (not ringtone volume) in Android?

前端 未结 8 1859
青春惊慌失措
青春惊慌失措 2020-12-01 00:01

Is there a way to get/set media volume? I have tried the following:

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


        
8条回答
  •  死守一世寂寞
    2020-12-01 00:26

    private AudioManager audio;
    

    Inside onCreate:

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

    Override 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;
        }
    }
    

提交回复
热议问题