博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android源码开发笔记 -- Sound Settings 音量调整相关
阅读量:5887 次
发布时间:2019-06-19

本文共 1146 字,大约阅读时间需要 3 分钟。

在Android8.0的Sound Settings中可以看到调整音量分为三种:Media/Alarm/Ring

当用户点击设置时,设置的值范围分别为:

Media 0--15,Alarm 0--7,Ring 0--7

 布局文件位于:packages/apps/Settings/res/xml/sound_settings.xml

实现文件位于:packages/apps/Settings/src/com/android/settings/notification/SoundSettings.java

在VolumeSeekBarPreference.java中会为Media初始化点击设置后要播放的sample音频,而Alarm/Ring会在播放时去读系统设定值。

final Uri sampleUri = mStream == AudioManager.STREAM_MUSIC ? getMediaVolumeUri() : null;

继续追下去可以看到真正设置声音是在frameworks/base/core/java/android/preference/SeekBarVolumizer.java中

可以看到若如上设置了sample media的URI,就不会再去设置,反之就会去找系统的URI

if (defaultUri == null) {            if (mStreamType == AudioManager.STREAM_RING) {                defaultUri = Settings.System.DEFAULT_RINGTONE_URI;            } else if (mStreamType == AudioManager.STREAM_NOTIFICATION) {                defaultUri = Settings.System.DEFAULT_NOTIFICATION_URI;            } else {                defaultUri = Settings.System.DEFAULT_ALARM_ALERT_URI;            }        }

真正设置系统音量的API如下:

mAudioManager.setStreamVolume(mStreamType, mLastProgress,                        AudioManager.FLAG_SHOW_UI_WARNINGS);

 

转载于:https://www.cnblogs.com/kunkka/p/8038173.html

你可能感兴趣的文章
dell主板40针开机针脚_电脑无法开机的常见问题:解决方法汇总
查看>>
中路径查找器的功能_死磕Tomcat系列(4)——Tomcat中的类加载器
查看>>
条件查询_ThinkPHP where方法:设置查询或操作条件
查看>>
文字 竖排居中_微信签名居中“新”代码,终于回来了
查看>>
轨道角度分布图_上海轨道交通9号线客流的时空特征和乘客组成研究
查看>>
曝光原理_超级干货!泡芙膨胀原理被曝光,谁还敢说泡芙难做!
查看>>
矩阵乘法_随笔1: PyTorch中矩阵乘法总结
查看>>
图标库 vue_关于vue项目font字体图标库导入未显示的问题
查看>>
按钮开始多线程_Unity手游实战:从0开始SLG——ECS战斗(四)实战ECS架构和优化...
查看>>
加工中心刻字宏程序_宏程序螺旋铣圆周沉头孔
查看>>
如何把apk转换成aia格式_酷狗音乐如何将歌曲转换成MP3格式?方法超级简单
查看>>
为什么所请求的剪切操作失败_操作系统进程与线程基本概念理解
查看>>
mapbox symbols 层级设置_mapboxgl实现带箭头轨迹线
查看>>
hutool读取和导出excel_Office文档操作(Hutool-poi)
查看>>
python messagebox显示到最前面_如何在打开MessageBox之前关闭ProgressDialog?
查看>>
多重采样和超级采样哪个流畅_蒙特卡洛方法-多重采样
查看>>
时序约束优先级_Vivado工程经验与各种时序约束技巧分享
查看>>
nginx win 启动关闭_windows下nginx启动与关闭的批处理脚本
查看>>
python中实参包括哪些_第50p,形参与实参,Python中函数的参数详解
查看>>
minio 并发数_MinIO 参数解析与限制
查看>>