Zwei gängige Methoden zur Lautstärkeanpassung wurden bereits vorgestellt. Im vorherigen Artikel haben wir den Codeaufrufprozess für die Erhöhung und Verringerung der Lautstärke analysiert. Hier werfen wir einen Blick auf eine andere Methode zum Einstellen der Lautstärke, setStreamVolume().
1. Prozessanalyse
Diese Methode wird normalerweise direkt aufgerufen, wenn der Softwareschlüssel die Lautstärke einstellt. In der Fahrzeugentwicklung wird normalerweise die entsprechende Methode in CarAudioManager aufgerufen und schließlich in AudioManager aufgerufen.
SysSettingAdapter
private static int mVolumeGroupIdMedia = VOLUME_GROUP_INDEX_MEDIA;
private static final int VOLUME_GROUP_INDEX_MEDIA = 0;
/**
* 获取媒体音音量
*/
public void getAudioMediaVolume(){
}
/**
* 设置媒体音音量
*/
public void setAudioMediaVolume(int index){
try {
if (mCarAudioManager == null) {
return;
}
mCarAudioManager.setGroupVolume(mVolumeGroupIdMedia, index, 0);
} catch (Exception e) {
e.printStackTrace();
}
}
CarAudioManager
Speicherort des Quellcodes: /packages/services/Car/car-lib/src/android/car/media/CarAudioManager.java
private final ICarAudio mService;
/**
* Zone主音频区域id