Android Automotive OS (AAOS) utilizza flag e configurazioni per consentire per caratteristiche, dal routing dinamico a flag di funzionalità più generici, come regolare il volume dal servizio dell'auto. Flag della configurazione AAOS attuali per l'audio vengono descritte qui.
Segnala | Finalità | |
---|---|---|
audioUseDynamicRouting |
Definite nel file di configurazione del servizio auto in
Attiva il routing AAOS.
La configurazione deve essere impostata su true . Quando false ,
il routing e gran parte di CarAudioService sono disattivati e il sistema operativo
torna al comportamento predefinito descritto in
Configurazione dei criteri relativi all'audio.
|
|
audioUseCarVolumeGroupMuting
| Definite nel file di configurazione del servizio auto per consentire la disattivazione dell'audio dei singoli
e gruppi di volumi. Se impostato su false (il valore predefinito), la disattivazione di
i singoli gruppi di volumi sono disattivati. La disattivazione attiva/disattiva l'audio principale.
Se impostato su true , la disattivazione dell'audio del gruppo del volume dell'auto è attiva e ogni
il singolo gruppo di volume può essere disattivato separatamente. Quando true ,
il muting del gruppo di volumi deve essere implementato
Controllo audio HAL.
| |
audioUseHalDuckingSignals |
Definite nel file di configurazione del servizio auto per attivare la
API IAudioControl#onDevicesToDuckChange per informare l'HAL quando
un'anatra. Quando true (valore predefinito), l'API riceve indicatori che indicano quale
dispositivi di output per anatre e quali usi tengono conto. Quando false ,
non viene chiamata l'API. L'API viene chiamata solo se
Controllo audio HAL
implementa il attenuazione automatica.
|
|
config_oemCarService |
Definito nel file di configurazione del servizio auto, si tratta del nome del componente
il servizio di personalizzazione OEM. Gli OEM possono scegliere di implementare questo servizio per
personalizzare le azioni dei servizi auto
per criteri diversi. Se gli OEM scelgono
questo componente, devono implementare un servizio per estendere
OemCarService esposti da car-lib, poi implementa
i servizi dei componenti richiesti. Nello specifico per i servizi audio per auto, gli OEM
può implementare uno qualsiasi dei servizi secondari audio per gestire l'azione audio. Per
i dettagli, vedi
Servizio di plug-in audio per auto.
Se il nome del componente non è valido, CarService non si connette
a qualsiasi servizio OEM. Il nome del componente non può essere un pacchetto di terze parti. it
devono essere preinstallati. |
|
audioVolumeAdjustmentContextsVersion |
Definite nel file di configurazione del servizio auto, la configurazione per selezionare versione dell'elenco di priorità del contesto di aggiustamento del volume. La versione 1 include tutti i contesti audio, nel seguente ordine:
La versione 2 è limitata ai seguenti contesti, in questo ordine. La versione predefinita è
|
|
audioPersistMasterMuteState |
Definita nel file di configurazione del servizio auto. La configurazione deve rimanere globale.
senza audio. Quando true (il valore predefinito), Android ripristina il
stato di disattivazione globale all'avvio. Quando il valore di audioUseCarVolumeGroupMuting è
true , questa operazione non influisce sulle modifiche persistenti dell'audio disattivato
le modifiche si basano su singoli gruppi di volumi. Il valore predefinito è impostato su
true e devono essere sovrascritti quando l'audio principale non deve essere
persistenti per un dispositivo. |
|
audioVolumeKeyEventTimeoutMs |
Definite nel file di configurazione del servizio auto, la configurazione per indicare in millisecondi mentre un gruppo di volume dell'auto è considerato attivo variazioni del controllo del volume durante gli eventi dei tasti del volume. La configurazione viene utilizzata come segue:
Il valore predefinito è |
|
audioUseCarVolumeGroupEvent |
Definita nel file di configurazione del servizio auto, la configurazione per abilitare il callback
eventi in gruppi di volume. Quando true , i clienti vengono richiamati
fino al giorno ICarVolumeGroupEvent agli eventi che influiscono sul volume
gruppi. Quando l'opzione è attiva:
Il valore predefinito è |
|
config_useFixedVolume
| Definito in frameworks/base/core/res/res/values/config.xml .
Deve essere impostato su true per consentire la gestione del servizio audio per auto
regolare il volume. Quando il flag config_useFixedVolume non è
impostata o impostata su false (il valore predefinito), le app possono chiamare il metodo
AudioManager API di gestione del volume e modifica il volume per
tipo di stream nel mixer del software. Ciò potrebbe essere indesiderato a causa del
l'effetto potenziale su altre app e il fatto che l'attenuazione del volume
software mixer può comportare la diminuzione dei bit significativi disponibili nel
quando lo ricevi all'amplificatore hardware. I nuovi dispositivi che non hanno
che è stato configurato e che è impostato su true (ricevi variazioni di volume)
attraverso le API di disattivazione del volume e dell'audio di AudioManager .
|
|
config_handleVolumeKeysInWindowManager |
La definizione in frameworks/base/core/res/res/values/config.xml deve
essere impostato su true per consentire al servizio audio dell'auto di intercettare
gli eventi chiave del volume. Se viene impostato sul volume false (il valore predefinito),
gli eventi chiave possono essere inoltrati all'app in primo piano e possono generare
derivanti dalla gestione degli eventi chiave del volume al di fuori del servizio audio dell'auto. |
Configurazioni di servizi audio per auto
Prima di Android 13, le configurazioni dei servizi auto venivano sovrascritte
con un overlay di configurazione del prodotto (per saperne di più, vedi
Personalizzazione della build con overlay di risorse)
per il file packages/services/Car/service/res/values/config.xml
.
PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>
La posizione del file di configurazione da <path_to_overlay>
all'attuale
la località deve includere packages/services/Car/service/res/values/
.
RRO di servizi per auto
Da Android 13, AAOS supporta
Overlay delle risorse di runtime. Utilizza un RRO per modificare
della configurazione dell'audio dell'auto. Ad esempio, consulta gli RRO per la
riferimento automobilistico cuttlefish
in
device/google/cuttlefish/shared/auto/rro_overlay/
. La
La configurazione di audioUseDynamicRouting
è stata ignorata in
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml
.
<resources>
<bool name="audioUseDynamicRouting">true</bool>
...
La mappa overlay delle risorse è contenuta in
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml
:
<overlay>
...
<item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>
Il manifest overlay della risorsa definito in
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml
contiene il valore targetPackage
impostato come com.android.car.updatable
.
Per saperne di più, consulta queste risorse:
- Overlay delle risorse di runtime
- Risoluzione dei problemi relativi agli overlay delle risorse di runtime
API abilitata per le funzionalità
Il metodo restituisce true
se la funzionalità è attivata sul dispositivo, altrimenti
false
. Nell'API CarAudioManager#isAudioFeatureEnabled
, il parametro
deve essere uno dei seguenti:
AUDIO_FEATURE_DYNAMIC_ROUTING
AUDIO_FEATURE_VOLUME_GROUP_MUTING
AUDIO_FEATURE_OEM_AUDIO_SERVICE
AUDIO_FEATURE_VOLUME_GROUP_EVENTS
AUDIO_FEATURE_AUDIO_MIRRORING