我们手机的音量一般都是由用户通过手机侧面的音量按钮进行调节的,但是有时候我们也是需要自己进行一些音量的调节,那我们就需要对Android音量调节有一个全面的认识。今天给大家介绍一些Android中的音量调节。
1.铃音种类介绍
要想调节音量,我们就要对Android系统中的铃音种类有一个认识。Android系统中国一共有6类铃音,分别是通话音,系统音,铃音,媒体音,闹钟音,通知音。我列出一张表格,其中包含了各种铃音和对应的标记。
AudioManager类的铃声类型 | 铃声名称 | 说明 |
STREAM_VOICE_CALL | 通话音 | |
STREAM_SYSTEM | 系统音 | |
STREAM_RING | 铃音 | 来电与收短信的铃声 |
STREAM_MUSIC | 媒体音 | 音频、视频、游戏等的声音 |
STREAM_ALARM | 闹钟音 | |
STREAM_NOTIFICATION | 通知音 | |
2.AudioManager的介绍和获取
管理这些铃声音量的工具是AudioManager,对象从系统服务AUDIO_SERVICE中获取。获取方法如下:
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
3.AudioManager常用方法
- getStreamMaxVolume:获取指定类型铃声的最大音量。
- getStreamVolume:获取指定类型铃声的当前音量。
- getRingerMode:获取指定类型铃声的响铃模式。响铃模式的取值说明见下表:
表1 | |
AudioManager类的响铃模式 | 说明 |
RINGER_MODE_NORMAL | 正常 |
RINGER_MODE_SILENT | 静音 |
RINGER_MODE_VIBRATE | 震动 |
- setStreamVolume:设置指定类型铃声的当前音量。
- setRingerMode:设置指定类型铃声的响铃模式。响铃模式的取值说明见表1。
- adjustStreamVolume:调整指定类型铃声的当前音量。第一个参数是铃声类型;第二个参数是调整方向,音量调整方向的取值说明见表2;第三个参数表示调整时的附加动作,一般使用FLAG_PLAY_SOUND表示调整时提示一个铃声。
表2 | |
AudioManager类的音量调整方向 | 说明 |
ADJUST_RAISE | 调大一级 |
ADJUST_LOWER | 调小一级 |
ADJUST_SAME | 抱持不变 |
ADJUST_MUTE | 静音 |
ADJUST_UNMUTE | 取消静音 |
ADJUST_TOGGLE_MUTE | 静音取反,即原来不是静音就设置静音,原来是静音就取消静音。 |
4.setStreamVolume和adjustStreamVolume的区别
setStreamVolume和adjustStreamVolume两个方法都能用来设置音量,不同的是setStreamVolume直接将音量调整到目标值,通常与拖动条配合使用;而adjustStreamVolume是以当前音量为基础,然后调大、调小或调静音。
5.使用示例
我们给出一个调整媒体音量的例子。其中setStreamVolume第二个参数的值要和getStreamMaxVolume配合使用,获取当前设备最大的音量值。
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
am.setStreamVolume(AudioManager.STREAM_MUSIC,10,AudioManager.FLAG_PLAY_SOUND);
关于Android中音量的调节就先写这么多了,大家有什么新的发现可以留言告诉我。