对于音量调节,对于车机 Audio 开发来说是相当重要的一个功能,主要分为系统音量、通话音量、导航音量、铃声音量、语音音量(微信等第三方应用)等。前面已经对音量调节有了详细分析分析,但这里还是有必要对音量静音功能进行分析。
一、功能封装
对于音量调节的封装,我们经常放在 Setting 模块下,所以这里我们也是将接口放在 SysSettingAdapter 中,前面的音量设置中也看到了相应的封装。
1、SysSettingAdapter
SysSettingAdapter 中都属于商家定制功能模块,所以一般位于 /vendor/ 模块下。
private final AudioManager mAudioManager;
private CarAudioManager mCarAudioManager;
public SysSettingsAdapter(Context context) {
mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
}
public void infoAudioMedia(){
// 初始化媒体音,即设置默认值
}
/**
* 获取媒体音是否可以静音
*/
public void getAudioMediaMuteEnable(){
// 通过本地Settings.System.getInt获取相关数据即可
}
/**
* 设置媒体音是否可以静音
*/
public void setAudioMediaMuteEnable(boolean state){
// 通过本地Settings.System.putInt保存相关数据即可
}
/**
* 获取媒体音是否静音
*/
public void getAudioMediaMute