参考博文:《Android原生音量控制》
参考博文:《深入理解AudioService》
一、问题描述
不连接USB耳机时,系统音量可以设置到最大值15,连接USB耳机后,系统音量仅能设置到4
一、原因分析
(1)安卓音频系统对不同的音频流设置了不同的音量控制范围,推测与该范围设置有关
但是在源码中STREAM_MUSIC的最大值已经设置为了15, mSafeMediaVolumeState = 10,安全音量也已经设置为了10
安全音量在xml文件中配置
//AudioService.java
mSafeMediaVolumeState = new Integer(Settings.Global.getInt(mContentResolver,
Settings.Global.AUDIO_SAFE_VOLUME_STATE,
SAFE_MEDIA_VOLUME_NOT_CONFIGURED));
///line284
/*