Android 扬声器与听筒的切换

本文主要实现扬声器与听筒的切换.而android中实现对音量和振铃模式的控制主要通过AudioManager类来实现.
AudioManager类 关于喇叭与听筒的主要方法


1. AudioManager 实例化

Context.getSystemService(Context.AUDIO_SERVICE)得到这个类的实例.


2. setSpeakerphoneOn
public void setSpeakerphoneOn (boolean on)
设置喇叭扩音器打开或关闭.
这个方法只能用于代替音频设置的平台范围管理应用程序或主要电话应用程序
参数

on   为true打开喇叭扩音器;为false关闭喇叭扩音器.


3.isSpeakerphoneOn
public boolean isSpeakerphoneOn ()
检查喇叭扩音器是否开着.
返回值

若喇叭扩音器开着,返回true.反之,返回false.


4. setMode
public void setMode (int mode)
设置音频模式.
音频模式包含音频路由和电话层的行为.因此,这个方法只能用于代替音频设置的平台范围管理应用程序或主要电话应用程序.特别地,MODE_IN_CALL模式只能用在当打电话时的电话程序中,因为它会引起信号从音频层馈入到平台混音器.
参数
mode        请求的音频模式(MODE_NORMAL, MODE_RINGTONE, MODE_IN_CALL
                           或MODE_IN_COMMUNICATION)
.通知HAL当前的音频状态以便它能
                    适当的路由音频.
5. 实例实现
	private AudioManager audioManager = 
			(AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
	/**
	 * 扬声器与听筒切换
	 * @param isSpeakerphoneOn
	 */
	public void setSpeakerphoneOn(boolean isSpeakerphoneOn){
		audioManager.setSpeakerphoneOn(isSpeakerphoneOn);
		if(!isSpeakerphoneOn){
             audioManager.setMode(AudioManager.MODE_NORMAL);
		}
	}



至此,本文讲解结束!

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值