El SO Android Automotive (AAOS) usa marcas y configuraciones para habilitar diferentes empezando por el enrutamiento dinámico con marcas de función más genéricas, como control de volumen desde el servicio del automóvil. Marcas de configuración de AAOS actuales para audio de la administración se describen aquí.
Marca | Propósito | |
---|---|---|
audioUseDynamicRouting |
Se define en el archivo de configuración del servicio de automóvil como
Habilita el enrutamiento de AAOS.
La configuración se debe establecer en true . Cuando false ,
y la mayor parte de CarAudioService , están inhabilitados, y el SO
regresa al comportamiento predeterminado descrito en
Configura políticas de audio.
|
|
audioUseCarVolumeGroupMuting
| Se definió en el archivo de configuración del servicio de autos para habilitar
grupos de volúmenes. Cuando se establece en false (el valor predeterminado), silenciar las llamadas
los grupos de volúmenes individuales están inhabilitados. En cambio, si se desactiva el sonido, se activará el silenciamiento principal.
Cuando se establece en true , se habilita el sonido grupal del volumen del automóvil y cada uno
un grupo de volumen individual se puede silenciar por separado. Cuando true ,
la función para silenciar grupos de volúmenes debe implementarse en la
HAL de control de audio.
| |
audioUseHalDuckingSignals |
Se define en el archivo de configuración del servicio de automóvil para habilitar la
API de IAudioControl#onDevicesToDuckChange para informar a la HAL cuándo
pato. Cuando es true (valor predeterminado), la API recibe indicadores que indican qué
dispositivos de salida para disminuir y qué usos mantienen el foco. Cuando false ,
no se llama a la API. La API no se llama a menos que
HAL de control de audio
implementa el autosilenciado de fondo.
|
|
config_oemCarService |
Tal como se define en el archivo de configuración del servicio de automóvil, este es el nombre del componente para
el servicio de personalización de OEM. Los OEM pueden optar por implementar este servicio para
personalizar las acciones de los servicios de automóviles para distintas políticas. Si los OEMs optan por
implementa este componente, deben implementar un servicio que extienda
OemCarService expone mediante car-lib y, luego, implementa
los servicios de componentes necesarios. Específicamente, en el caso
de los servicios de audio para automóviles, los OEM
puede implementar cualquiera de los servicios secundarios de audio para administrar las acciones de audio. Para
en detalle, consulta
Servicio del complemento de audio del auto.
Si el nombre del componente no es válido, CarService no se conectó.
a cualquier servicio de OEM. El nombre del componente no puede ser un paquete de terceros. Integra
debe estar preinstalada. |
|
audioVolumeAdjustmentContextsVersion |
Definido en el archivo de configuración del servicio de automóvil, configuración para seleccionar la Versión de la lista de prioridades del contexto de ajuste de volumen. La versión 1 incluye todos los contextos de audio, en este orden:
La versión 2 se limita a los siguientes contextos y en este orden. La versión predeterminada es
|
|
audioPersistMasterMuteState |
Se define en el archivo de configuración del servicio de automóviles; la configuración se mantiene global
silencio. Cuando true (el valor predeterminado), Android restablece la
el estado de silencio global durante el inicio. Cuando audioUseCarVolumeGroupMuting sea
true , esto no afecta los cambios de silencio persistentes
los cambios se basan en grupos de volúmenes individuales. El valor predeterminado es
true y debe reemplazarse cuando no se debe silenciar la instancia principal.
persistentes para un dispositivo. |
|
audioVolumeKeyEventTimeoutMs |
Se define en el archivo de configuración del servicio de automóvil, y la configuración indica la tiempo de espera en milisegundos mientras un grupo de volumen del automóvil se considera activo por cambia el control de volumen durante los eventos de teclas de volumen. La configuración se usa de la siguiente manera:
El valor predeterminado es |
|
audioUseCarVolumeGroupEvent |
Se define en el archivo de configuración del servicio del vehículo, hay una configuración para habilitar la devolución de llamada
eventos a grupos de volúmenes. Cuando es true , los clientes reciben una devolución de llamada
hasta ICarVolumeGroupEvent hasta eventos que afectan el volumen
grupos. Cuando la función esté habilitada, ocurrirá lo siguiente:
El valor predeterminado es |
|
config_useFixedVolume
| Se define en frameworks/base/core/res/res/values/config.xml .
Se debe establecer en true para permitir que el servicio de audio del vehículo lo administre.
control de volumen. Cuando la marca config_useFixedVolume no está
establecido o está establecido en false (el valor predeterminado), las apps pueden llamar al
AudioManager las APIs de administración de volumen y cambia el volumen
el tipo de transmisión en el mezclador de software. Esto puede ser indeseable debido a la
el efecto potencial en otras apps
y el hecho de que la atenuación del volumen
de software puede tener como resultado menos bits significativos disponibles en el
cuando se reciben en el amplificador de hardware. Los dispositivos nuevos que no tienen
que se configuraron y que están configuradas para que true reciban cambios en el volumen
a través de las APIs de volumen y silencio de AudioManager .
|
|
config_handleVolumeKeysInWindowManager |
Se define en frameworks/base/core/res/res/values/config.xml , debe
establécelo en true para permitir que el servicio de audio del vehículo intercepte
eventos de tecla de volumen. Si se establece en false (el valor predeterminado), el volumen
los eventos clave pueden reenviarse a la aplicación en primer plano y pueden provocar
resultados de la administración de eventos clave de volumen fuera del servicio de audio del vehículo. |
Configuración del servicio de audio del auto
Antes de Android 13, se reemplazaban las configuraciones del servicio de vehículos
con una superposición de configuración del producto (para obtener más información, consulta
Cómo personalizar la compilación con superposiciones de recursos)
para el archivo packages/services/Car/service/res/values/config.xml
.
PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>
La ubicación del archivo de configuración desde <path_to_overlay>
hasta el lugar
la ubicación debe incluir packages/services/Car/service/res/values/
.
RRO de servicio de automóviles
A partir de Android 13, AAOS admite
Superposiciones de recursos del entorno de ejecución. Usa una RRO para cambiar la
de la configuración del audio del automóvil. Por ejemplo, consulta las RRO de la
referencia de la industria automotriz cuttlefish
en
device/google/cuttlefish/shared/auto/rro_overlay/
El
Se anuló la configuración de audioUseDynamicRouting
en
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml
<resources>
<bool name="audioUseDynamicRouting">true</bool>
...
El mapa de superposición de recursos se incluye en
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml
:
<overlay>
...
<item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>
El manifiesto de superposición de recursos definido en
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml
Contiene el objeto targetPackage
configurado como com.android.car.updatable
.
Consulta estos recursos para obtener más información:
- Superposiciones de recursos del entorno de ejecución
- Solución de problemas de superposiciones de recursos en tiempo de ejecución
API con funciones habilitadas
El método devuelve true
si la función está habilitada en el dispositivo; de lo contrario,
false
En la API de CarAudioManager#isAudioFeatureEnabled
, el parámetro
pasado debe ser uno de los siguientes:
AUDIO_FEATURE_DYNAMIC_ROUTING
AUDIO_FEATURE_VOLUME_GROUP_MUTING
AUDIO_FEATURE_OEM_AUDIO_SERVICE
AUDIO_FEATURE_VOLUME_GROUP_EVENTS
AUDIO_FEATURE_AUDIO_MIRRORING