知识的领域是无限的,我们的学习也是无限期的。这篇文章主要讲述Android开发之AudioManager(音频管理器)具体解释相关的知识,希望能为你提供帮助。
AudioManager简单介绍:AudioManager类提供了訪问音量和振铃器mode控制。
使用Context.getSystemService(Context.AUDIO_SERVICE)来得到这个类的一个实例。
公有方法:
Public Methods |
|||||||||||
int |
abandonAudioFocus(AudioManager.OnAudioFocusChangeListenerl) 放弃音频的焦点。 |
||||||||||
void |
adjustStreamVolume(int
streamType, int direction, int flags) 调整手机指定类型的声音。 |
||||||||||
void |
adjustSuggestedStreamVolume(int,int
suggestedStreamType intflags) 调整最相关的流的音量。或者给定的回退流。 |
||||||||||
void |
adjustVolume(int,intflags) 调整最相关的数据流的音量。 |
||||||||||
int |
getMode() 返回当前音频模式。 |
||||||||||
String |
getParameters(String
keys) 给音频硬件设置一个varaible数量的參数值 |
||||||||||
int |
getRingerMode() 返回当前的铃声模式。 |
||||||||||
int |
getRouting(int
mode) 这种方法是不赞成的。不直接查询音频路由,使用isSpeakerphoneOn(), isBluetoothA2dpOn isBluetoothScoOn(),()和isWiredHeadsetOn()方法。 |
||||||||||
int |
getStreamMaxVolume(int
streamType) 返回特定流的最大音量指数。 |
||||||||||
int |
getStreamVolume(int
streamType) 返回特定数据流的当前音量索引。 |
||||||||||
int |
getVibrateSetting(int
vibrateType) 返回是否该用户的振动设置为振动类型。 |
||||||||||
boolean |
isBluetoothA2dpOn() 检查是否A2DP蓝牙耳机音频路由是打开或关闭。 |
||||||||||
boolean |
isBluetoothScoAvailableOffCall() 显示当前平台是否支持使用SCO的关闭调用用例。 |
||||||||||
boolean |
isBluetoothScoOn() 检查通信是否使用蓝牙SCO。 |
||||||||||
boolean |
isMicrophoneMute() 检查是否打开或关闭麦克风静音。 |
||||||||||
boolean |
isMusicActive() 检查是否有音乐处于活跃状态。 |
||||||||||
boolean |
isSpeakerphoneOn() 检查是否打开或关闭扬声器。 |
||||||||||
boolean |
isWiredHeadsetOn() 检查是否插入耳机 |
||||||||||
void |
loadSoundEffects() 载入声音效果。 |
||||||||||
void |
playSoundEffect((int
effectType, float volume) 播放声音效果(按键点击,盖开启/关闭...) |
||||||||||
void |
playSoundEffect(int
effectType) 播放声音效果(按键点击,盖开启/关闭...) |
||||||||||
void |
registerMediaButtonEventReceiver(ComponentName
eventReceiver) 注冊一个组件MEDIA_BUTTON意图的唯一接收机。 |
||||||||||
int |
requestAudioFocus(AudioManager.OnAudioFocusChangeListener
l,int streamType,int durationHint) 请求音频的焦点。 |
||||||||||
void |
setBluetoothA2dpOn(booleanon) 这种方法是不赞成的。 不要使用。 |
||||||||||
void |
setBluetoothScoOn(booleanon) 要求使用蓝牙SCO耳机进行通讯。 |
||||||||||
void |
setMicrophoneMute(booleanon) 设置是否让麦克风静音。 |
||||||||||
void |
setMode(int mode) 设置声音模式。 |
||||||||||
void |
setParameters(String
keyValuePairs) 设置一个音频硬件数量可变的參数值。 |
||||||||||
void |
setRingerMode(int
ringerMode) 设置手机电话铃声的模式。 |
||||||||||
void |
setRouting(int
mode, int routes, int mask) 这种方法是不赞成的。不设置音频路由直接使用setSpeakerphoneOn(), setBluetoothScoOn()方法。 |
||||||||||
void |
setSpeakerphoneOn(boolean
on) 设置扬声器打开或关闭。 |
||||||||||
void |
setStreamMute(int
streamType,booleanstate) 将手机的指定类型的声音调整为静音。 |
||||||||||
void |
setStreamSolo(int
streamType,boolean state) 独奏或来取消特定流。 |
||||||||||
void |
setStreamVolume
(int streamType, int index, int flags) 直接设置手机的指定类型的音量值。 |
||||||||||
void |
setVibrateSetting
(int vibrateType, int vibrateSetting) 设置设置时应该振动的振动类型。 |
||||||||||
void |
setWiredHeadsetOn(boolean
on) 这种方法是不赞成的。不要使用。 |
||||||||||
boolean |
shouldVibrate(int
vibrateType) 返回特定类型是否应该依据用户震动设置和当前的振铃器 mode。 |
||||||||||
void |
startBluetoothSco() 启动蓝牙SCO音频连接。 |
||||||||||
void |
stopBluetoothSco() 停止蓝牙SCO音频连接。 |
||||||||||
void |
unloadSoundEffects() 卸载音效。 |
||||||||||
void |
unregisterMediaButtonEventReceiver(ComponentName
eventReceiver) 注销MEDIA_BUTTON意图的接收机。 |
经常用法说明:void adjustStreamVolume(int streamType,int direction, int flags)
调整手机指定类型的声音。当中第一个參数streamType指定声音类型,该參数可接受例如以下几个值。
l int STREAM_ALARM:手机闹铃的声音。
l int STREAM_DTMF:DTMF音调的声音。
l int STREAM_MUSIC:手机音乐的声音。
l int STREAM_NOTIFICATION:系统提示的声音。
l int STREAM_RING The:电话铃声的声音。
l int STREAM_SYSTEM:手机系统的声音。
l int STREAM_VOICE_CALL:语音电话的声音。
第二个參数指定对声音进行增大、还是减小该參数可接受例如以下几个值:
ADJUST_LOWER 减少音量
ADJUST_RAISE 升高音量
ADJUST_SAME 保持不变,这个主要用于向用户展示当前的音量 第三个參数是调整声音时的标志,比如指定FLAG_SHOW_UI,则指定调整声音时显示音量进度条。
void setMicrophoneMute(booleanon)
设置是否让麦克风静音。
设置为true将麦克风静音; false关闭静音
void setMode(intmode)
设置声音模式。可设置的值有 NORMAL,RINGTONE, 和IN_CALL。
void setRingerMode(intringerMode)
设置手机电话铃声的模式。可支持例如以下几个属性值。
l int RINGER_MODE_NORMAL:正常的手机铃声。
l int RINGER_MODE_SILENT:手机铃声静音。
l int RINGER_MODE_VIBRATE:手机震动。
void setSpeakerphoneOn(booleanon)
设置扬声器打开或关闭。设置为true开启免提通话; false关闭免提。
void setStreamMute(intstreamType,booleanstate)
将手机的指定类型的声音调整为静音。当中streamType參数与adjustStreamVolume方法中第一个參数的意义同样。
void setStreamVolume (int streamType, int index, int flags)
直接设置手机的指定类型的音量值。
当中streamType參数与adjustStreamVolume方法中第一个參数的意义同样。
【Android开发之AudioManager(音频管理器)具体解释】
推荐阅读
- Android4.0-4.4 加入支持状态栏显示耳机图标方法(支持带不带MIC的两种耳机自己主动识别)
- 在 Android 应用程序中使用 SQLite 数据库以及怎么用
- android studio 导入第三方库的记录
- Android代码模拟物理屏幕点击事件
- Android仿Win8界面的button点击
- android 选取部分 log 的两种方法
- Appium-Java滑动操作
- 14款用于音乐制作的最佳DAW软件合集(哪个最好())
- 11款最佳白板动画软件合集(你最喜欢哪个())