目前网上有一些关于修改系统默认音量大小的方法,比如修改AudioSystem.java的DEFAULT_STREAM_VOLUME:

public static int[] DEFAULT_STREAM_VOLUME = new int[] {4,  // STREAM_VOICE_CALL7,  // STREAM_SYSTEM5,  // STREAM_RING5, // STREAM_MUSIC6,  // STREAM_ALARM5,  // STREAM_NOTIFICATION7,  // STREAM_BLUETOOTH_SCO7,  // STREAM_SYSTEM_ENFORCED5, // STREAM_DTMF5, // STREAM_TTS5, // STREAM_ACCESSIBILITY};

但是我试过这种方式,发现默认音量大小并没有改变。分析代码发现AudioService.java文件的AudioService构造函数中,对默认音量值进行了强行赋值。

int defaultMusicVolume = SystemProperties.getInt("ro.config.media_vol_default", -1);if (defaultMusicVolume != -1 &&defaultMusicVolume <= MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC]) {AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] = defaultMusicVolume;} else {if (isPlatformTelevision()) {AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 4;} else {AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 3;}}

如果定义了ro.config.media_vol_default的属性值,则默认音量值会被设置为该属性值的大小。如果没有定义该属性值,则默认音量值会被强制设置为最大音量值的1/4(手机模式)或者1/3(其他模式)。

因此,想修改默认的media音量大小,有两种方法可以修改。一种方法是定义ro.config.media_vol_default的系统属性值,这种方法不用修改源文件,只需在配置文件中增加一句即可;另一种方法是,将AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] 强制地赋值为你想设置的音量大小。

Android源码修改默认音量大小的方法相关推荐

  1. Android源码配置默认输入法

    文章目录 Android源码定制默认输入法 声明 Android源码修改默认输入法 关于配置默认输入法的包名和类名 修改说明 Android源码定制默认输入法 声明 郑重声明:博文为原创内容,可以转载 ...

  2. Android TV 源码修改默认输入法

    前一阵子,应泰国客户需求,需要在Android TV系统定制一个多语言输入法,至少支持中.英.泰三种语言.拿到这个任务,对于至今还是小白的我来说,当然先去google一下有没有大神专门做过符合要求的输 ...

  3. Android源码修改后的语音录音代码

    如下代码为Android源码的录音代码修改,只要稍微修改即可以运到自己的应用中. package com.android.phone;import android.app.Activity; impo ...

  4. 将Android源码集成到Eclipse中的方法

    1. 首先,下载Android源码: Android 2.0源码下载地址:http://download.csdn.net/source/2931366 Android 2.1源码下载地址:http: ...

  5. Android开发WebView之加载HTML源码修改HTML字体大小以及缩放HTML的方法

    老套路上图: 再看下缩放功能: 先说下设置HTML网页字体大小的方法: //设置网页字体大小webview.getSettings().setTextSize(WebSettings.TextSize ...

  6. Android源码修改(自动获取usb权限)基于Android5.1定制版系统

    自动获取usb权限 这篇文章参考了这个得到的解决方案 http://blog.csdn.net/hubbybob1/article/details/50263925 这个博主已经写得很清楚啦,但是还有 ...

  7. Android源码修改 替换安装apk时,出现的android小机器人图标。

    首先我们要知道android的apk安装界面是一个单独的app.所以我们在源码中找到该app. 该app在源码下的路径为 packages\apps\PackageInstaller,没错Packag ...

  8. Android 源码修改,使第三方应用可以直接使用su命令

    在android原生系统中,只有root权限和shell权限下才可以使用su命令,虽然在userdebug模式下编译的系统镜像有自带的su文件,但是第三方应用却无法使用.于是在这种场景下,有两种方式可 ...

  9. android 9 源码 修改 默认 屏幕锁定 -- 无

    配置文件路径: frameworks/base/packages/SettingsProvider/res/values/defaults.xml 修改: <bool name="de ...

最新文章

  1. jquery纯数字验证
  2. python提取网页中p标签中的内容_使用Python进行爬虫的初学者指南
  3. python用turtle画皮卡丘_用Python的turtle作画(2)——皮卡丘
  4. 用神经网络例子讲解TF运行方式~人工智能入门编程例子讲解
  5. 字节跳动算法工程师总结:java自学路线及推荐书籍
  6. 牛客网Java刷题知识点之表达式类型的自动提升
  7. Stanford机器学习---第九讲. 聚类
  8. android o 可下载字体,android自定义字体
  9. 在输入框输入时限制输入框只能输入正整数以及两位小数正则表达式
  10. 【jQwidgets】千分位
  11. EasyOCR,识别图片中的文字真的so easy
  12. linux crontab 每30秒,crontab 每 30 秒自動執行
  13. Python 3中 mp3play module 的使用
  14. 高效的JS 拼接字符串
  15. Unity3D 游戏开发学习资料(不断更新中。。。)
  16. Java 集合框架(5)---- Map 相关类解析(中)
  17. rails dbconsole
  18. 对于母版页的一些修改
  19. 长沙理工大学第十二届ACM大赛-重现赛 L - 选择困难症
  20. Docker部署镜像(二)

热门文章

  1. 路由器你竟然是这样的...
  2. Chrome 69 for mac版本浏览器下载,OpenSUSE版本,Chrome 69 windows 64位版本
  3. 次启动 展示引导图功能
  4. empt注意事项 php_十个 PHP 开发者最容易犯的错误
  5. 99%品牌梦寐以求的爆款流量,小红书笔记搜索排名置顶黑科技!
  6. centos7网络设置
  7. 瑞萨e2studio(16)----基于DTC的多通道ADC采集
  8. AlexNet-阅读笔记-理解
  9. 在Android手机上使用PaddleMobile实现图像分类
  10. 安卓手机便签App敬业签添加便签图片时怎么上传原图?