Setting the Android System Volume

前端 未结 2 470
名媛妹妹
名媛妹妹 2021-01-06 09:32

I am writing an application which handles the following:

  1. Silent - Makes the phone volume silent
  2. Low - Makes the phone volume 1 point above the silent<
相关标签:
2条回答
  • 2021-01-06 10:11

    Add this in onCreate() method of your code and then play around with the 0 value to increase or decrease the volume where 0 means OFF.

    AudioManager mgr=null;
    
    mgr=(AudioManager)getSystemService(Context.AUDIO_SERVICE);
    mgr.setStreamVolume(AudioManager.STREAM_MUSIC, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
    mgr.setStreamVolume(AudioManager.STREAM_RING, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
    mgr.setStreamVolume(AudioManager.STREAM_ALARM, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
    mgr.setStreamVolume(AudioManager.STREAM_SYSTEM, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
    mgr.setStreamVolume(AudioManager.STREAM_NOTIFICATION, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
    
    0 讨论(0)
  • 2021-01-06 10:13

    Check out http://thinkandroid.wordpress.com/2010/04/05/dealing-with-the-android-media-player/

    The steps are:

    • get the audio man.
    • fetch the required stream.
    • call appropriate method on stream.

    e.g.:

    mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);
    
    • to get max vol:

      int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
      
    0 讨论(0)
提交回复
热议问题