Android学习之工具类一:系统声音模式设置工具类
权限:<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
import android.app.Activity;
import android.content.Context;
import android.media.AudioManager;/*** 系统声音模式设置工具类** @author linzhiyong* @time 2017年1月9日15:30:47* @email wflinzhiyong@163.com* @desc*/
public class AudioManagerUtil {private Context context;private AudioManager audioManager;public AudioManagerUtil(Context context) {this.context = context;this.audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);}/*** 设置是否使用扬声器* @param on*/public void setSpeakerphoneOn(boolean on) {if (on) {if (this.audioManager.isSpeakerphoneOn()) {return;}this.audioManager.setSpeakerphoneOn(true);} else {this.audioManager.setSpeakerphoneOn(false);//关闭扬声器this.audioManager.setRouting(AudioManager.MODE_NORMAL, AudioManager.ROUTE_EARPIECE, AudioManager.ROUTE_ALL);((Activity) context).setVolumeControlStream(AudioManager.STREAM_VOICE_CALL);//把声音设定成Earpiece(听筒)出来,设定为正在通话中this.audioManager.setMode(AudioManager.MODE_IN_CALL);}}/*** 是否是扬声器模式* @return*/public boolean isSpeakerphoneOn() {return this.audioManager.isSpeakerphoneOn();}/*** 设置静音 true: 静音 false: 正常* @param on*/public void setSilentOn(boolean on) {if (on) {if (this.audioManager.getRingerMode() == AudioManager.RINGER_MODE_SILENT) {return;}this.audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);} else {this.audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
// this.audioManager.setStreamVolume(AudioManager.RINGER_MODE_NORMAL, ringerVolume, 0);}}/*** 是否是静音模式* @return*/public boolean isSlientOn() {return this.audioManager.getRingerMode() == AudioManager.RINGER_MODE_SILENT|| this.audioManager.getRingerMode() == AudioManager.RINGER_MODE_VIBRATE;}}
Android学习之工具类一:系统声音模式设置工具类相关推荐
- Android学习按键事件监听与Command模式
Android学习按键事件监听与Command模式 - Dufresne - 博客园 Android学习按键事件监听与Command模式 一 Command模式 意图: 将一个请求封装为一个对象,从而 ...
- Android学习笔记---16_采用SharedPreferences保存用户偏好设置参数
16_采用SharedPreferences保存用户偏好设置参数 Android学习笔记---16_采用SharedPreferences保存用户偏好设置参数 2013-03-08 16_采用Shar ...
- Win11系统声音怎么设置?Win11怎么调声音?
Win11系统声音怎么设置?在我们平常电脑的使用中,有时候会觉得电脑系统声音不是太大就是太小,那么应该在哪里调系统声音呢?下面就教给大家Win11系统声音设置方法,大家可以去尝试看看. 更多重装系统教 ...
- centos怎么汉化linux,linux centos 系统中文模式设置方法
linux centos 系统中文模式设置方法 下面小编就为大家具体的介绍linux centos 系统怎么设置中文模式,方便大家阅读. 首先,需要安装一下linux桌面程序.一般系统有自带的桌面,然 ...
- android 11.0 12.0添加系统字体并且设置为默认字体
1.概述 在11.0 12.0系统定制化开发中,在产品定制中,有产品需求对于系统字体风格不太满意,所以想要更换系统的默认字体,对于系统字体的修改也是常有的功能,而系统默认也支持增加字体,所以就来添加楷 ...
- linux 解析pdf下载工具,Linux高级系统级性能分析工具-perf.pdf
Linux高级系统级性能分析工具-perf Linux 的系统级性能剖析工具‐perf (二) 承刚 TAOBAO Kernel Team chenggang.qin@ 第三章 Perf top ...
- linux下的pdf工具下载,Linux_Linux系统下的PDF工具 LinuxPDFeditor, Linux下PDF编辑软件nb - phpStudy...
Linux系统下的PDF工具 LinuxPDFeditor Linux下PDF编辑软件 修改用pdfedit,加注记用xournal,合并用pdktk. 当用户在寻找适宜的PDF编辑器时,Linux ...
- java 系统托盘图标_Java SystemTray类(系统托盘)和TrayIcon类(托盘图标)
利用SystemTray类可以访问系统托盘,每个Java应用程序在运行时都会被分配一个该类的实例,可以通过该类的静态方法getSystemTray()获得.某些系统可能不支持系统托盘功能,此时可以通过 ...
- 两类Linux系统的包管理工具
Linux系统分为两种: 1.RedHat系列:Redhat.Centos.Fedora等 2.Debian系列:Debian.Ubuntu等 RedHat系列的包管理工具是yum,Debian系列的 ...
最新文章
- 如何保护你写的 Python 代码?
- PIC单片机精通_A/D转换异步串口通讯实例与详解
- 启动postgres
- 神州数码否认买下华为荣耀,股价连续第二日涨停,创历史新高!
- 关于微信开发与微信支付更新
- Android 学习心得(2)——Android内置数据库SQLite
- html5 canvas类库 实例
- 关于 if __name__ == '__main__' 的理解
- [英语阅读笔记]Creating Master Detail Pages using GridView
- win10设置HTML桌面背景,Win10系统直接将视频设置为桌面背景的方法
- matlab 积分后带int,matlab int 积分
- HX711 压力调试 51程序
- 韦东山嵌入式linux第一期_裸机实战之开发板熟悉与体验篇
- OTA更新利用CRC保证程序的完整性
- Educational Codeforces Round 126 (Rated for Div. 2)(A-E)
- 不忘初心,牢记使命——SSM始于Maven,终于Maven(关于Maven的大总结)
- Linux中的进程、线程和文件描述符
- BIOS IDE 改 AHCI
- ITopologicalOperator Intersect
- 丁苯嵌段共聚物的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
热门文章
- 深圳地区邮编(518000)
- 编辑器组件PDF-XChange Editor更新了,增加新的语言
- Java字符串的替换(replace()、replaceFirst()和replaceAll())
- 【React】路由(详解)
- 广州大数据项目招资深大数据运维工程师
- JAVA入门到精通-第38讲-线程-坦克大战6
- BZOJ3834: [Poi2014]Solar Panels
- 【Excel高效工作3】VLOOKUP函数实例使用(二):精确匹配进阶——反向查找,多条件查找 / 模糊匹配的使用
- 视觉大模型DINOv2:自我监督学习的新领域
- 【HNU-CSEE jetson nano 第一节】工具准备(软件+硬件)