前言

2014年的买的旧手机到现在一直在捣腾,尽管厂商已经时隔很多年没有更新过系统了。于是自己刷了魔趣的7.1的系统,不得不说原生android系统比手机厂商二次定制过的系统要流畅很多,但是在去年这只陪伴了很多年的旧手机终于出现了问题,扬声器没有声音了,于是拆开手机检查了半天,没有发现任何烧坏的痕迹,拆下扬声器测试也是好的,可能是尾插主板坏了吧,刮了下扬声器触点重新安上还是没有声音,没办法了,于是就想能否用听筒来播放所有声音呢?百度了下还真有这样的软件,于是就随便下了个app,点击切换成听筒模式,终于可以了。但每次重启后就要重新打开,而且有时候还会强制退出,或者用着用着听筒就没有声音了,需要重新打开软件,很麻烦。于是又想能否通过修改系统配置文件让声音都从听筒来输出呢?

正文

答案当然是可以的,首先手机得获取root权限,然后下载个第三方文件管理器,这里用了ES文件浏览器,修改配置文件路径如下:

/etc/audio_policy.conf

打开后该配置文件内容如下:

# Global configuration section: lists input and output devices always present on the device
# as well as the output device selected by default.
# Devices are designated by a string that corresponds to the enum in audio.hglobal_configuration {attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKERdefault_output_device AUDIO_DEVICE_OUT_SPEAKERattached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_THIRD_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX|AUDIO_DEVICE_IN_VOICE_CALL
}# audio hardware module section: contains descriptors for all audio hw modules present on the
# device. Each hw module node is named after the corresponding hw module library base name.
# For instance, "primary" corresponds to audio.primary.<device>.so.
# The "primary" module is mandatory and must include at least one output with
# AUDIO_OUTPUT_FLAG_PRIMARY flag.
# Each module descriptor contains one or more output profile descriptors and zero or more
# input profile descriptors. Each profile lists all the parameters supported by a given output
# or input stream category.
# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding
# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n".audio_hw_modules {primary {outputs {primary {sampling_rates 44100|48000channel_masks AUDIO_CHANNEL_OUT_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_EXTERNAL_WIFI|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSETflags AUDIO_OUTPUT_FLAG_PRIMARY}hdmi {sampling_rates 48000channel_masks dynamicformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_OUT_AUX_DIGITALflags AUDIO_OUTPUT_FLAG_MULTI_CH}compress_offload {sampling_rates 11025|16000|22050|32000|44100|48000channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_2POINT1|AUDIO_CHANNEL_OUT_QUAD|AUDIO_CHANNEL_OUT_PENTA|AUDIO_CHANNEL_OUT_5POINT1|AUDIO_CHANNEL_OUT_6POINT1|AUDIO_CHANNEL_OUT_7POINT1formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_AC3|AUDIO_FORMAT_E_AC3devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_EXTERNAL_WIFI|AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSETflags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING}}inputs {primary {sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK|AUDIO_CHANNEL_IN_VOICE_UPLINK|AUDIO_CHANNEL_IN_VOICE_DNLINKformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_WIRED_HEADPHONE|AUDIO_DEVICE_IN_AUX_DIGITAL|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_THIRD_MIC}}}a2dp {outputs {a2dp {sampling_rates 44100channel_masks AUDIO_CHANNEL_OUT_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_OUT_ALL_A2DP}}inputs {a2dp {sampling_rates 44100|48000channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_IN_BLUETOOTH_A2DP}}}usb {outputs {usb_accessory {sampling_rates 44100channel_masks AUDIO_CHANNEL_OUT_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_OUT_USB_ACCESSORY}usb_device {sampling_rates 44100|48000channel_masks dynamicformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET}}inputs {usb_device {sampling_rates dynamicchannel_masks AUDIO_CHANNEL_IN_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_IN_USB_DEVICE}}}tms {outputs {tms {sampling_rates 44100channel_masks AUDIO_CHANNEL_OUT_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_OUT_EXTERNAL_TMS}}inputs {tms {sampling_rates 44100channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_IN_EXTERNAL_TMS}}}r_submix {outputs {submix {sampling_rates 48000channel_masks AUDIO_CHANNEL_OUT_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_OUT_REMOTE_SUBMIX}}inputs {submix {sampling_rates 48000channel_masks AUDIO_CHANNEL_IN_STEREOformats AUDIO_FORMAT_PCM_16_BITdevices AUDIO_DEVICE_IN_REMOTE_SUBMIX}}}
}

修改以下代码即可:

global_configuration {attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER //输出设备default_output_device AUDIO_DEVICE_OUT_SPEAKER //默认输出设备attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_THIRD_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX|AUDIO_DEVICE_IN_VOICE_CALL //输入设备
}

将上面代码修改为以下代码:

global_configuration {attached_output_devices AUDIO_DEVICE_OUT_EARPIECE //直接删掉扬声器输出方式,剩下听筒输出方式default_output_device AUDIO_DEVICE_OUT_EARPIECE //默认输出设备修改为听筒attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_THIRD_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX|AUDIO_DEVICE_IN_VOICE_CALL //输入设备无需修改
}

修改完后保存重启手机,重启后打开音乐播放器,音乐成功从听筒播放出来了。

Android系统的最大魅力就是可玩性很高,可以随意修改各种文件,甚至开发app的成本也不高,有需要可以自己开发出一个app来玩,但是也有缺点,就是国内的很多厂商把原生Android系统定制的很臃肿,还出现了各种BUG,植入了各种广告,令人很是头疼。还有就是国内没有Google,无法使用Google服务和Google Play,导致应用质量下降,也没有了统一推送机制,各种app服务在后台随意运行着,最终占用了大量的运行内存,还影响了手机的续航,特别是某些毒瘤app,很臃肿,后台开的服务还不止一两个,甚至还搞出来一套服务间相互唤醒机制,真的很无语。

Android7.1修改系统配置文件默认听筒输出所有声音相关推荐

  1. Android7.1修改系统默认多媒体音量大小

    Android7.1修改系统默认多媒体音量大小 始修改\frameworks\base\packages\SettingsProvider\res\values\defaults.xml def_mu ...

  2. xp如何查看计算机配置文件,Windows XP如何修改用户配置文件默认位置

    Windows XP如何修改用户配置文件默认位置 修改注册表可能会造成您的系统崩溃或数据丢失,请先行备份操作系统,以备不测 在"桌面"上按快捷键"Ctrl+R" ...

  3. Mac修改系统截图默认保存路径

    Mac修改系统截图默认保存路径 新建目标位置文件夹,使用command⌘+option⌥+c复制文件路径 打开终端Terminal,输入defaults write com.apple.screenc ...

  4. [Android系统]android7.1 修改系统默认输入法

    参看博客: Android 7.0 删除原生输入法(AOSP)&更换系统默认输入法_Photon128的博客-CSDN博客_aosp输入法 [RK3288][Android6.0] 调试笔记 ...

  5. rk3399 Android7.1 修改系统时区、修改默认输入法、修改系统默认语言

    1.修改默认语言 进入源码目录,使用如下命令 root@ubuntu:/3399_backup/g3399-v7-1-2-20180529_backup# find . -name full_base ...

  6. android7.0修改系统默认时间

    客户需求:修改默认系统时间为2017/1/1,即烧机后开机显示的时间. Index: SystemServer.java ======================================= ...

  7. RK3399 Android7.1修改系统默认USB功能

    在device\rockchip\common\device.mk中修改persist.sys.usb.config的值,如下将USB功能默认设置为MTP(去掉ADB): ifeq ($(strip ...

  8. RK3399 Android7.1修改系统默认壁纸

    替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.jpg 替换frameworks/base/core/res/res/d ...

  9. msm8953+android8.1接听电话时声音由默认听筒输出改为外放输出

    1. 方法一,修改frameworks/av//services/audiopolicy/enginedefault/src/Engine.cpp Engine::getDeviceForStrate ...

最新文章

  1. 使用相对路径时,./、../、../../,代表的什么?
  2. 领域驱动设计(2)怎么使用沟通
  3. python公历转农历_Python如何实现阳历转阴历的方法分享
  4. web.xml中的ContextLoaderListener和DispatcherServlet区别
  5. C# win10系统调用不了系统自带的软键盘osk.exe
  6. ReactNative开发环境
  7. 【CZY选讲·Yjq的棺材】
  8. while 循环 格式化输出
  9. JavaScript 字符串与数字的相互转换
  10. iir滤波器c语言程序,请教C语言做iir滤波器问题
  11. java fx 教程_JavaFX快速入门
  12. Java中将汉语转成拼音的方法
  13. 【Python绘图】Python画动态条形图(横向直方图)
  14. 期货开户手续费的秘密成了透明
  15. C语言数据结构【手抄版】第五章 树和二叉树【上篇】
  16. Ubuntu安装Google Chrome,报NSS version的错误
  17. 【Python】爬取金庸射雕英雄传连载版以及金庸作品里所有江湖门派
  18. PMP证书的有效期多久?
  19. 2022数学建模竞赛暑期培训讲座——微分/差分 论文写作
  20. 2.4移动Web网页开发——响应式布局(含媒体查询和bootstrap)

热门文章

  1. pta地下迷宫探索(详解)
  2. 全球与中国贝特类药物市场深度研究分析报告
  3. React配置baseUrl
  4. 数据库实验六 数据库的完整性
  5. eclipse打开出现英文乱码
  6. 中国娃娃专访BIWEB开源php网站建站系统肖飞
  7. 有价值的博客收藏(转载)
  8. Cs231n笔记--图像分割和目标检测
  9. 全部翻译作品 (及时更新)
  10. flashfxpl连接服务器失败,serv-u列表错误,套接字错误