Android中打开扬声器关闭麦克风的代码实现

Android中打开扬声器关闭麦克风的代码实现


2024年5月16日发(作者:)

//获取音频服务

AudioManager audioManager = (AudioManager)

temService(_SERVICE);

//设置声音模式

e(_MUSIC);

//关闭麦克风

rophoneMute(false);

// 打开扬声器

akerphoneOn(true);

//实例化一个SoundPool对象

SoundPool soundPool =new SoundPool(10, _SYSTEM, 5);

//加载声音

int id = (this,,5);

//播放声音

(id, 1, 1, 0, 0, 1);

另外必须加上权限:

android:name="_AUDIO_SETTINGS"/>

AudioManager简介:

AudioManager类提供了访问音量和振铃器mode控制。使用temService

(_SERVICE)来得到这个类的一个实例。

公有方法:

Public Methods

int

void

void

void

int

String

int

int

abandonAudioFocus(oFocusChangeListenerl)

放弃音频的焦点。

adjustStreamVolume(int streamType, int direction, int flags)

调整手机指定类型的声音。

adjustSuggestedStreamVolume(int,int suggestedStreamType intflags)

调整最相关的流的音量,或者给定的回退流。

adjustVolume(int,intflags)

调整最相关的数据流的音量。

getMode()

返回当前音频模式。

getParameters(Stringkeys)

给音频硬件设置一个varaible数量的参数值

getRingerMode()

返回当前的铃声模式。

getRouting(int mode)

这个方法是不赞成的。不直接查询音频路由,使用isSpeakerphoneOn(),

isBluetoothA2dpOn isBluetoothScoOn(),()和isWiredHeadsetOn()方法。

int

int

int

boolean

boolean

boolean

boolean

boolean

boolean

boolean

void

void

void

void

int

getStreamMaxVolume(int streamType)

返回特定流的最大音量指数。

getStreamVolume(int streamType)

返回特定数据流的当前音量索引。

getVibrateSetting(int vibrateType)

返回是否该用户的振动设置为振动类型。

isBluetoothA2dpOn()

检查是否A2DP蓝牙耳机音频路由是打开或关闭。

isBluetoothScoAvailableOffCall()

显示当前平台是否支持使用SCO的关闭调用用例。

isBluetoothScoOn()

检查通信是否使用蓝牙SCO。

isMicrophoneMute()

检查是否打开或关闭麦克风静音。

isMusicActive()

检查是否有音乐处于活跃状态。

isSpeakerphoneOn()

检查是否打开或关闭扬声器。

isWiredHeadsetOn()

检查是否插入耳机

loadSoundEffects()

加载声音效果。

playSoundEffect((int effectType, float volume)

播放声音效果(按键点击,盖开启/关闭...)

playSoundEffect(int effectType)

播放声音效果(按键点击,盖开启/关闭...)

registerMediaButtonEventReceiver(ComponentNameeventReceiver)

注册一个组件MEDIA_BUTTON意图的唯一接收机。

requestAudioFocus(oFocusChangeListenerl,int

streamType,int durationHint)

请求音频的焦点。

setBluetoothA2dpOn(booleanon)

这个方法是不赞成的。不要使用。

setBluetoothScoOn(booleanon)

要求使用蓝牙SCO耳机进行通讯。

setMicrophoneMute(booleanon)

设置是否让麦克风静音。

setMode(int mode)

设置声音模式。

setParameters(StringkeyValuePairs)

设置一个音频硬件数量可变的参数值。

setRingerMode(int ringerMode)

设置手机电话铃声的模式。

void

void

void

void

void

void

void setRouting(int mode, int routes, int mask)

这个方法是不赞成的。不设置音频路由直接使用setSpeakerphoneOn(),

setBluetoothScoOn()方法。

setSpeakerphoneOn(boolean on)

设置扬声器打开或关闭。

setStreamMute(int streamType,booleanstate)

将手机的指定类型的声音调整为静音。

setStreamSolo(int streamType,booleanstate)

独奏或来取消特定流。

setStreamVolume(int streamType, int index, int flags)

直接设置手机的指定类型的音量值。

setVibrateSetting(int vibrateType, int vibrateSetting)

设置设置时应该振动的振动类型。

setWiredHeadsetOn(boolean on)

这个方法是不赞成的。不要使用。

shouldVibrate(int vibrateType)

返回特定类型是否应该根据用户震动设置和当前的振铃器mode。

startBluetoothSco()

启动蓝牙SCO音频连接。

stopBluetoothSco()

停止蓝牙SCO音频连接。

unloadSoundEffects()

卸载音效。

unregisterMediaButtonEventReceiver(ComponentNameeventReceiver)

注销MEDIA_BUTTON意图的接收机。

void

void

void

void

void

void

boolean

void

void

void

void

常用方法说明:

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:语音电话的声音。

第二个参数指定对声音进行增大、还是减小;第三个参数是调整声音时的标志,例如指定

FLAG_SHOW_UI,则指定调整声音时显示音量进度条。

voidsetMicrophoneMute(booleanon)

设置是否让麦克风静音。设置为true将麦克风静音;false关闭静音

void setMode(intmode)

设置声音模式。可设置的值有 NORMAL,RINGTONE, 和IN_CALL。

voidsetRingerMode(intringerMode)

设置手机电话铃声的模式。可支持如下几个属性值。

l int RINGER_MODE_NORMAL:正常的手机铃声。

l int RINGER_MODE_SILENT:手机铃声静音。

l int RINGER_MODE_VIBRATE:手机震动。

voidsetSpeakerphoneOn(booleanon)

设置扬声器打开或关闭。设置为true开启免提通话;false关闭免提。

voidsetStreamMute(intstreamType,booleanstate)

将手机的指定类型的声音调整为静音。其中streamType参数与adjustStreamVolume方法中

第一个参数的意义相同。

voidsetStreamVolume(int streamType, int index, int flags)

直接设置手机的指定类型的音量值。其中streamType参数与adjustStreamVolume方法中第

一个参数的意义相同。


发布者:admin,转转请注明出处:http://www.yc00.com/web/1715872477a2684808.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信