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(音频管理器)具体解释的更多相关文章

  1. AudioManager音频管理器

    AudioManager音频管理器提供了如下几种常用方法来控制手机音频: 1.adjustStreamVolume(int StreamType,int direction,int flgs):调整手 ...

  2. AudioManager音频管理器控制手机音频实例

    import android.media.AudioManager;import android.media.MediaPlayer;import android.os.Bundle;import a ...

  3. Android 音频管理器AudioManager

    音频管理器AudioManager,通过它可以管理android系统的音量或直接让系统静音,依旧是通过调用getSystemService()方法获取音频管理器AudioManager对象,获取到该对 ...

  4. Android开发之旅3:android架构

    引言 通过前面两篇: Android 开发之旅:环境搭建及HelloWorld Android 开发之旅:HelloWorld项目的目录结构 我们对android有了个大致的了解,知道如何搭建andr ...

  5. Android开发之MdiaPlayer详解

    Android开发之MdiaPlayer详解 MediaPlayer类可用于控制音频/视频文件或流的播放,我曾在<Android开发之基于Service的音乐播放器>一文中介绍过它的使用. ...

  6. Android开发之ViewPager+ActionBar+Fragment实现响应式可滑动Tab

     今天我们要实现的这个效果呢,在Android的应用中十分地常见,我们可以看到下面两张图,无论是系统内置的联系人应用,还是AnyView的阅读器应用,我们总能找到这样的影子,当我们滑动屏幕时,Tab可 ...

  7. Android开发之Java必备基础

    Android开发之Java必备基础 Java类型系统 Java语言基础数据类型有两种:对象和基本类型(Primitives).Java通过强制使用静态类型来确保类型安全,要求每个变量在使用之前必须先 ...

  8. Android 开发之旅:深入分析布局文件&又是“Hello World!”

    http://www.cnblogs.com/skynet/archive/2010/05/20/1740277.html 引言 上篇可以说是一个分水岭,它标志着我们从Android应用程序理论进入实 ...

  9. Android开发之eclipse 快捷键

    转自:<Android开发之eclipse 快捷键>http://www.cnblogs.com/aimeng/archive/2012/08/07/2626909.html Ctrl+1 ...

随机推荐

  1. c# 与java base64 不一致解决方案

    不一致的问题不是编码的问题  而是json字符串的问题通常我们会json 嵌套  我们先来看连个字符串 {"contentType":"","http ...

  2. UVA 10859 - Placing Lampposts 树形DP、取双优值

                              Placing Lampposts As a part of the mission ‘Beautification of Dhaka City’, ...

  3. nyoj--114--某种序列(滚动数组)

    某种序列 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 数列A满足An = An-1 + An-2 + An-3, n >= 3  编写程序,给定A0, A1 和 ...

  4. [POJ 2279] Mr. Young's Picture Permutations

    [题目链接] http://poj.org/problem?id=2279 [算法] 杨氏矩阵与勾长公式 [代码] #include <algorithm> #include <bi ...

  5. DB-MySQL:MySQL 序列使用

    ylbtech-DB-MySQL:MySQL 序列使用 1.返回顶部 1. MySQL 序列使用 MySQL 序列是一组整数:1, 2, 3, ...,由于一张数据表只能有一个字段自增主键, 如果你想 ...

  6. Redis学习笔记(六) 基本命令:List操作

    原文链接:http://doc.redisfans.com/list/index.html lpush key value[value...] 将一个或多个value插入到列表的表头:例:lpush ...

  7. 看似简单!解读C#程序员最易犯的7大错误

    编程时犯错是必然的,即使是一个很小的错误也可能会导致昂贵的代价,聪明的人善于从错误中汲取教训,尽量不再重复犯错,在这篇文章中,我将重点介绍C#开发人员最容易犯的7个错误. 格式化字符串 在C#编程中, ...

  8. 微信小程序遇坑笔记

    最近做了一个简单的微信小程序,遇到了一些坑: 1.appid固定,但是appsecret是可以变的,而且没有地方查看,后台以查看就是变更了,所以这个地方在开发的时候需要保存好: 2.打开网页,这个网页 ...

  9. 如何解决 不能以 DISTINCT 方式选择 text、ntext 或 image 数据类型

    distinct去重,如果遇到text字段,可以用以下方法解决 1.用not exists select * from tab awhere not exists (  select 1 from t ...

  10. HDU 2037 今年暑假不AC【贪心】

    解题思路:即为给出一个总长度确定的区间,再输入不同的子区间,求在这个总区间里面包含的不相交的子区间最多有多少个. 可以由最特殊的情况来想,即给出的这些子区间现在都不相交,比如 ----- (1,3)  ...