In Android Automotive OS (AAOS) werden Flags und Konfigurationen verwendet, um verschiedene Funktionen zu aktivieren, angefangen beim dynamischen Routing bis hin zu allgemeineren Feature-Flags wie der Lautstärkeregelung über den Autoservice. Die aktuellen AAOS-Konfigurationsflags für die Audioverwaltung werden hier beschrieben.
| Melden | Zweck | 
|---|---|
| audioUseDynamicRouting | In der Konfigurationsdatei des Autoservice definiert, um AAOS-Routing zu aktivieren.
    Die Konfiguration muss auf truefestgelegt sein. Wennfalse, sind das Routing und ein Großteil vonCarAudioServicedeaktiviert und das Betriebssystem greift auf das in Audioprichtlinien konfigurieren beschriebene Standardverhalten zurück. | 
| useCoreAudioRouting | Wird in der Konfigurationsdatei des Autoservice definiert, um die Verwaltung des AAOS-Kern-Audio-Routings zu aktivieren.
    Wenn der Wert auf truegesetzt ist, verwendet der Car Audio-Dienst die Konfigurationsdefinitionen, die mit der konfigurierbaren Audio-Richtlinien-Engine eingerichtet wurden.
    Wenn der Wert auffalsegesetzt ist, wird für die Routenverwaltung die dynamische Audio-Richtlinienmixdefinition des Car Audio-Dienstes verwendet, die mitaudioUseDynamicRoutingkonfiguriert wurde. | 
| useCoreAudioVolume | In der Konfigurationsdatei des Autoservice definiert, um die Lautstärkeregelung von AAOS-Kernaudio zu aktivieren.
    Wenn der Wert auf truefestgelegt ist, verwendet der Car Audio-Dienst die mit der konfigurierbaren Audio-Richtlinien-Engine eingerichteten Lautstärkegruppendefinitionen.
    Wenn der Wert auffalsegesetzt ist, wird für die Lautstärkeverwaltung die Standarddefinition der Lautstärkegruppe des Car Audio-Dienstes verwendet, die mitaudioUseDynamicRoutingkonfiguriert wurde. | 
| audioUseCarVolumeGroupMuting | Wird in der Konfigurationsdatei des Autoservice definiert, um das Stummschalten einzelner Lautstärkegruppen zu ermöglichen. Wenn der Wert auf false(Standardwert) gesetzt ist, ist das Stummschalten einzelner Lautstärkegruppen deaktiviert. Stattdessen wird durch das Stummschalten die Hauptstummschaltung aktiviert.
    Wenn diese Option auftrueeingestellt ist, ist die Stummschaltung der Lautstärkegruppe für das Auto aktiviert und jede einzelne Lautstärkegruppe kann separat stummgeschaltet werden. Wenntrue, muss das Stummschalten der Volume-Gruppe in der Audio Control HAL implementiert werden. | 
| audioUseHalDuckingSignals | In der Konfigurationsdatei des Autoservice definiert, um die IAudioControl#onDevicesToDuckChangeAPI zu aktivieren, damit HAL informiert wird, wann die Lautstärke reduziert werden soll. Wenntrue(Standardwert), empfängt die API Signale, die angeben, welche Ausgabegeräte geduckt werden sollen und welche Verwendungen den Fokus behalten. Wennfalse, wird die API nicht aufgerufen. Die API wird nur aufgerufen, wenn das Audio Control HAL Ducking implementiert. | 
| config_oemCarService | Dies ist der Komponentenname für den OEM-Anpassungsdienst, der in der Konfigurationsdatei des Autoservice definiert ist. OEMs können diesen Dienst implementieren, um Autoserviceaktionen für verschiedene Richtlinien anzupassen. Wenn OEMs diese Komponente implementieren möchten, müssen sie einen Dienst implementieren, um OemCarServicezu erweitern, das von car-lib bereitgestellt wird, und dann die erforderlichen Komponentendienste implementieren. Speziell für den Car Audio-Dienst können OEMs einen der Audio-Unterdienste implementieren, um Audio-Aktionen zu verwalten. Weitere Informationen finden Sie unter Car Audio Plugin Service.
    Wenn der Komponentenname ungültig ist, kannCarServicekeine Verbindung zu einem OEM-Dienst herstellen. Der Komponentenname darf kein Drittanbieterpaket sein. Es muss vorinstalliert sein. | 
| audioVolumeAdjustmentContextsVersion | In der Konfigurationsdatei des Autoservice definierte Konfiguration zur Auswahl der Version der Prioritätenliste für den Kontext der Lautstärkeanpassung. Version 1 enthält alle Audiokontexte in dieser Reihenfolge: 
 Version 2 ist auf die folgenden Kontexte beschränkt (in dieser Reihenfolge): Die Standardversion ist  
 | 
| audioPersistMasterMuteState | In der Konfigurationsdatei des Autoservice definierte Konfiguration zum Beibehalten des globalen Stummschaltungsstatus. Wenn true(der Standardwert) festgelegt ist, stellt Android beim Starten den globalen Stummschaltungsstatus wieder her. WennaudioUseCarVolumeGroupMuting=true, hat dies keine Auswirkungen auf das Beibehalten von Stummschaltungsänderungen, da diese auf einzelnen Lautstärkegruppen basieren. Der Standardwert isttrueund muss überschrieben werden, wenn die Master-Stummschaltung nicht für ein Gerät beibehalten werden soll. | 
| audioVolumeKeyEventTimeoutMs | Wird in der Konfigurationsdatei des Autoservice definiert. Konfiguration zur Angabe des Zeitlimits in Millisekunden, während eine Autolautstärkegruppe bei Lautstärketastenereignissen als aktiv für Lautstärkeregelungsänderungen gilt. Die Konfiguration wird so verwendet: 
 Der Standardwert ist  | 
| audioUseCarVolumeGroupEvent | In der Konfigurationsdatei des Autoservice definierte Konfiguration zum Aktivieren von Callback-Ereignissen für Lautstärkegruppen. Wenn true, erhalten Clients überICarVolumeGroupEventeinen Callback für Ereignisse, die sich auf Volumengruppen auswirken. Wenn aktiviert, gilt Folgendes:
 Der Standardwert ist  | 
| config_useFixedVolume | Definiert in frameworks/base/core/res/res/values/config.xml.
    Muss auftruegesetzt sein, damit der Car Audio-Dienst die Lautstärkeregelung verwalten kann. Wenn das Flagconfig_useFixedVolumenicht festgelegt oder auffalse(Standardwert) gesetzt ist, können Apps dieAudioManager-APIs zur Lautstärkeverwaltung aufrufen und die Lautstärke nach Streamtyp im Softwaremixer ändern. Das kann unerwünscht sein, da es sich auf andere Apps auswirken kann und die Lautstärkeabschwächung im Softwaremixer dazu führen kann, dass weniger signifikante Bits im Signal verfügbar sind, wenn es am Hardwareverstärker empfangen wird. Neue Geräte, die nicht konfiguriert wurden und auftrueeingestellt sind, erhalten Lautstärkeänderungen über dieAudioManager-APIs für Lautstärke und Stummschaltung. | 
| config_handleVolumeKeysInWindowManager | Muss in frameworks/base/core/res/res/values/config.xmldefiniert und auftruegesetzt werden, damit der Car Audio-Dienst Lautstärketastenereignisse abfangen kann. Wenn der Wert auffalse(Standardwert) festgelegt ist, können Lautstärketastenereignisse an die Vordergrund-App weitergeleitet werden. Dies kann zu unerwünschten Ergebnissen führen, wenn Lautstärketastenereignisse außerhalb des Car Audio-Dienstes verwaltet werden. | 
| audioUseMinMaxActivationVolume | In der Konfigurationsdatei des Autoservice definiert, um 
    Mindest- und Höchstaktivierungsvolumen zu aktivieren. Wenn true, kann der Index für die Volumensteigerung aufgrund der Verwaltung des Mindest- und Höchstaktivierungsvolumens angepasst werden. Beifalse(Standardwert) werden das Mindest- und das maximale Aktivierungsvolumen nicht berücksichtigt. | 
| audioUseFadeManagerConfiguration | In der Konfigurationsdatei des Autoservice definiert, um 
    vom System erzwungenes Verhalten bei Verlust des Audiofokus zu aktivieren. Wenn true, parst das Car Audio-Framework die Konfigurationsdefinitionen für das Car Audio-Fading und wendet die entsprechendeFadeManagerConfigurationan, wenn der Audiofokus verloren geht. Beifalse(Standardwert) erzwingt das System kein Einblendungsverhalten, wenn eine App den Audiofokus verliert. | 
Konfigurationen für den Car Audio Service
Vor Android 13 wurden Autoservice-Konfigurationen mit einem Produktkonfigurations-Overlay für die Datei packages/services/Car/service/res/values/config.xml überschrieben. Weitere Informationen finden Sie unter Build mit Ressourcen-Overlays anpassen.
PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>
Der Speicherort der Konfigurationsdatei von <path_to_overlay> bis zum tatsächlichen Speicherort muss packages/services/Car/service/res/values/ enthalten.
RROs für Autodienste
Seit Android 13 unterstützt AAOS Laufzeit-Ressourcen-Overlays. Verwenden Sie ein RRO, um den Wert der Car-Audio-Konfiguration zu ändern. Beispiele finden Sie in der cuttlefish-Referenz für die Automobilbranche in device/google/cuttlefish/shared/auto/rro_overlay/. Die audioUseDynamicRouting-Konfiguration wird in device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml überschrieben.
<resources>
    <bool name="audioUseDynamicRouting">true</bool>
...
Die Karte mit Ressourcen-Overlays befindet sich in device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml:
<overlay>
...
  <item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>
Das im device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml definierte Ressourcen-Overlay-Manifest enthält den targetPackage-Satz als com.android.car.updatable.
Weitere Informationen finden Sie in den folgenden Ressourcen:
API mit aktivierter Funktion
Die Methode gibt true zurück, wenn das Feature auf dem Gerät aktiviert ist, andernfalls false. In der CarAudioManager#isAudioFeatureEnabled API muss der übergebene Parameter einer der folgenden Werte sein:
- AUDIO_FEATURE_DYNAMIC_ROUTING
- AUDIO_FEATURE_VOLUME_GROUP_MUTING
- AUDIO_FEATURE_OEM_AUDIO_SERVICE
- AUDIO_FEATURE_VOLUME_GROUP_EVENTS
- AUDIO_FEATURE_AUDIO_MIRRORING
