一看就會Android之手機系統音量的設定
AudioManager類位於android.Media 包中,通過getSystemService(Context.AUDIO_SERVICE)方法獲得AudioManager例項物件。AudioManager audiomanage = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
audiomanager就是我們定義的控制系統聲音的物件。
常用的音量控制的方法如下:
-
獲取系統的最大音量
getStreamMaxVolume(int streamType)
2.獲取當前手機音量
getStreamVolume(int streamType) --- ---
3.逐級性增大或減小音量(該方法不能直接設定音量為某個值,而是從當前音量逐級遞減或遞加,一般結合Button使用)
adjustStreamVolume(intstreamType,intdirection,intflags);
第二個引數為調整音量的方向,取值有:ADJUST_LOWER(降低聲音),ADJUST_RAISE(增加聲音)和ADJUST_SAME。
4.直接性設定音量大小(該方法適用於直接設定當前音量為某個值----一般結合SeekBar使用)
setStreamVolume(int streamType, int index, int flags)
第一個引數的幾個值:
AudioManager.STREAM_ALARM:手機鬧鈴的聲音
AudioManager.STREAM_MUSIC:手機音樂的聲音
AudioManager.STREAM_DTMF:DTMF音調的聲音
AudioManager. STREAM_RING:電話鈴聲的聲音
AudioManager. STREAM_NOTFICATION:系統提示的聲音
AudioManager.STREAM_SYSTEM:系統的聲音
AudioManager. STREAM_VOICE_CALL:語音電話聲音
第二個表示調整音樂的大小,
第三個引數表示顯示調整時的可選的標誌位,常取值為
5.設定指定型別的聲音是否為靜音,true代表為靜音,false取消靜音
setStreamMute(intstreamType,Boolean state):
如為播放音樂設定點選靜音按鈕時靜音,則如下:
setStreamMute(AudioManager.STREAM_MUSIC, true);
常用方法:
android audioManager獲取音量:先獲取AudioManager例項,
AudioManager mAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
//通話音量
int max =mAudioManager.getStreamMaxVolume( AudioManager.STREAM_VOICE_CALL );
int current =mAudioManager.getStreamVolume( AudioManager.STREAM_VOICE_CALL );
//系統音量
int max =mAudioManager.getStreamMaxVolume( AudioManager.STREAM_SYSTEM );
current =mAudioManager.getStreamVolume( AudioManager.STREAM_SYSTEM );
//鈴聲音量
max =mAudioManager.getStreamMaxVolume( AudioManager.STREAM_RING );
current =mAudioManager.getStreamVolume( AudioManager.STREAM_RING );
//音樂音量
max =mAudioManager.getStreamMaxVolume( AudioManager.STREAM_MUSIC );
current =mAudioManager.getStreamVolume( AudioManager.STREAM_MUSIC );
//提示聲音音量
max =mAudioManager.getStreamMaxVolume( AudioManager.STREAM_ALARM );
current =mAudioManager.getStreamVolume( AudioManager.STREAM_ALARM );