android安全音量
Android 设备插上耳机,为了避免音量过高伤害用户听力,会触发其“安全音量”
(Safe Media Volume)机制.
1 安全音量打开和默认值配置
安全音量的开关和默认值配置在frameworks\base\core\res\res\values\config.xml
这个配置文件的config_safe_media_volume_enabled(安全音量使能)和
config_safe_media_volume_index(安全音量提示等级)这两个值。
2 配置设备需要安全音量提示
如果想配置多些设备或者少些设备有安全音量提示可以修改AudioService.java类的
mSafeMediaVolumeDevices变量,添加对应的设备即可。
private final int mSafeMediaVolumeDevices =
AudioSystem.DEVICE_OUT_WIRED_HEADSET |
AudioSystem.DEVICE_OUT_WIRED_HEADPHONE| AudioSystem.DEVICE_OUT_USB_HEADSET;
3 弹框点击确定后需要连续播放20小时才会重新触发弹框
frameworks/base/services/core/java/com/android/server/audio/AudioService.java
private static int UNSAFE_VOLUME_MUSIC_ACTIVE_MS_MAX ; = (20 * 3600 * 1000);