本文主要实现扬声器与听筒的切换.而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);}}

至此,本文讲解结束!

Android 扬声器与听筒的切换相关推荐

  1. android听筒+扬声器自动切换,Android 扬声器与听筒的切换

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

  2. Android 话筒、听筒、扬声器

    话筒是输入(麦克风),听筒.扬声器是输出(喇叭) 听筒/扬声器: 听筒是用来听对方传送过来的声音,手机放的MP3和开机铃声是从喇叭发出的. 听筒模式,就是手机上一般听电话的内置小耳机,声音较小. 扬声 ...

  3. 【Android】Audio音频输出通道切换 - 蓝牙bluetooth、外放

    参考: [Android]Audio音频输出通道切换 - 蓝牙.外放 Android Audio 音频输出通道切换 为什么 iOS 或 Android 设备连接蓝牙设备后不能通过蓝牙设备接电话? xq ...

  4. Android禁止横屏竖屏切换

    在Android中要让一个程序的界面始终保持一个方向,不随手机方向转动而变化的办法: 只要在AndroidManifest.xml里面配置一下就可以了. 在AndroidManifest.xml的ac ...

  5. android的app语言无法切换,Android应用实现多语言切换

    关于Android应用实现多语言切换,有好几种办法,网上也搜到很多资料,这里有个简单有效的办法. 步骤如下: 在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认 ...

  6. Android中实现“程序前后台切换效果”和“返回正在运行的程序,而不是一个新Activity”...

    ANDROID 一.首先是返回正在运行的程序,而不是新的ACTIVITY. 多网上关于 通知栏的例子都是打开一个新的Activity,代码也很多. 根据那些代码如下     public void s ...

  7. Android 模拟器横屏竖屏切换设置

    Android 模拟器横屏竖屏切换设置 时间:2012-07-04   来源:设计与开发   作者:Daniel   点击:5571 摘要:  Android 模拟器旋转,横屏.竖屏切换设置,andr ...

  8. Android监听横竖屏切换

    偶然在项目中用到播放视频时,需要横屏将视频全屏播放,所以需要监听屏幕的横竖屏切换事件. ConfigChanges,用于捕获手机状态的改变,当横竖屏切换,屏幕尺寸变化,弹出键盘,系统设置改变等条件,就 ...

  9. Android 监听横竖屏切换

    Android 监听横竖屏切换 重写 Activity 中的 onConfigurationChanged 方法 override fun onConfigurationChanged(newConf ...

最新文章

  1. Jquery怎么比较日期大小?
  2. 什么时候z检验什么时候t检验?
  3. 1.关于UltraEdit中的FTP和Tenent配置,UE远程连接Linux进行文件操作
  4. asp.net拦截器
  5. TQ210 —— s5pv210 Linux内核结构
  6. 微信小程序调试之【不在以下合法域名列表中】
  7. 关于Unity中Mesh网格的详解
  8. Android自定义控件及自定义属性
  9. pycharm git OpenSSL SSL_read: Connection was reset, errno 10054
  10. Apizza-绑定数据模型
  11. 高性能中级维修电工及技能培训考核实训装置
  12. web渗透测试----14、CSRF(跨站请求伪造攻击)
  13. 西门子plc软件 linux,西门子PLC软件安装总结工程师们都在收藏
  14. excel几个数相加等于某个数_『excel表如何从一列数据中筛选出合计等于某数的某些数?』...
  15. 就业推荐表鉴计算机水平,毕业生就业推荐表的鉴定评语
  16. 纠缠谎言蒙蔽双眼 而真实 已埋没
  17. 视频剪辑怎么学?四个方面要注意,整体思路是关键
  18. “笨办法”学Python3——练习5 更多变量和打印
  19. 玩转华为数据中心交换机系列 | 配置STP功能示例
  20. 4.23以上UE4 版本HTC-VIVE VR项目打包的注意事项

热门文章

  1. indesign选中不了图片删除_PPT怎么制作九宫格图片?让你的PPT与众不同
  2. ORACLE EBS WORKFLOW实现多附件下载
  3. Ubuntu安装Burp Suite--史上最详细教程
  4. 计算机保研要不要刷实习?
  5. 量具管理-量具生成和二维码打印
  6. Log4net自定义信息(变量或属性或字段)存入数据库
  7. 小学莲山课件网 计算机教案,大班毕业主题教案:我上小学了
  8. 厦大博士学位论文抄袭案后续
  9. 独立开发并发布自己的一款手游——SpaceWar
  10. oracle建表语句设置主键,oracle 表添加主键 primary key