Android Automotive OS (AAOS), dinamik yönlendirmeden başlayıp araba hizmetindeki ses düzeyi kontrolü gibi daha genel özellik işaretlerine kadar farklı özellikleri etkinleştirmek için işaretler ve yapılandırmalar kullanır. Ses yönetimi için mevcut AAOS yapılandırma bayrakları burada açıklanmaktadır.
Bayrak | Amaç | |
---|---|---|
audioUseDynamicRouting | Araç servisi yapılandırma dosyasında AAOS yönlendirmeyi etkinleştirmek için tanımlanmıştır. Yapılandırmanın true olarak ayarlanması gerekir. false olduğunda, yönlendirme ve CarAudioService büyük bir kısmı devre dışı bırakılır ve işletim sistemi, Ses politikalarını yapılandırma bölümünde açıklanan varsayılan davranışa geri döner. | |
audioUseCarVolumeGroupMuting | Bireysel birim gruplarının sessize alınmasını etkinleştirmek için araç hizmeti yapılandırma dosyasında tanımlanmıştır. false (varsayılan değer) olarak ayarlandığında, bireysel ses grubu gruplarının sessize alınması devre dışı bırakılır. Bunun yerine, sessize alma ana sessize alma işlemini değiştirir. true olarak ayarlandığında, araç ses grubu ses kapatma etkinleştirilir ve her bir ses grubu ayrı ayrı sessize alınabilir. true olduğunda, Ses Kontrolü HAL'sinde ses grubu sessize alma işlemi uygulanmalıdır. | |
audioUseHalDuckingSignals | IAudioControl#onDevicesToDuckChange API'sinin HAL'a ne zaman eğileceğini bildirmesini sağlamak için araba hizmeti yapılandırma dosyasında tanımlanmıştır. true olduğunda (varsayılan değer), API hangi çıkış cihazlarının devre dışı bırakılacağını ve hangi kullanımların odağı tuttuğunu belirten sinyaller alır. false olduğunda API çağrılmaz. Ses Kontrolü HAL'i eğilmeyi uygulamadığı sürece API çağrılmaz. | |
config_oemCarService | Araç hizmeti yapılandırma dosyasında tanımlanan bu, OEM özelleştirme hizmetinin bileşen adıdır. OEM'ler, araç servis işlemlerini farklı politikalara göre özelleştirmek amacıyla bu hizmeti uygulamayı tercih edebilir. OEM'ler bu bileşeni uygulamayı tercih ederse, car-lib tarafından sunulan OemCarService genişletmek için bir hizmet uygulamalı ve ardından gerekli bileşen hizmetlerini uygulamalıdır. Özellikle araç ses hizmeti için, OEM'ler ses eylemini yönetmek için ses alt hizmetlerinden herhangi birini uygulayabilir. Ayrıntılar için Araç Ses Eklentisi Hizmeti'ne bakın. Bileşen adı geçersizse CarService herhangi bir OEM hizmetine bağlanmayacaktır. Bileşen adı üçüncü taraf paketi olamaz. Önceden yüklenmiş olması gerekir. | audioVolumeAdjustmentContextsVersion | Araba servisi yapılandırma dosyasında tanımlanan, ses düzeyi ayarlama bağlamı öncelik listesinin sürümünü seçmek için yapılandırma. Sürüm 1, tüm ses bağlamlarını şu sırayla içerir:
Sürüm 2 bu sırayla aşağıdaki bağlamlarla sınırlıdır. Varsayılan sürüm
|
audioPersistMasterMuteState | Araba servisi yapılandırma dosyasında tanımlanan, genel sessiz durumunu sürdürecek yapılandırma. true olduğunda (varsayılan değer), Android, önyükleme sırasında genel sessiz durumunu geri yükler. audioUseCarVolumeGroupMuting true olduğunda, sessize alma değişiklikleri bireysel ses düzeyi gruplarına dayalı olduğundan bunun sessize alma değişikliklerinin kalıcı olması üzerinde hiçbir etkisi yoktur. Varsayılan değer true olarak ayarlanmıştır ve bir aygıt için ana sessize alma işleminin sürdürülmemesi gerektiğinde bu değerin üzerine yazılması gerekir. | |
audioVolumeKeyEventTimeoutMs | Araba servisi yapılandırma dosyasında tanımlanan, ses seviyesi tuşu etkinlikleri sırasında bir araba ses seviyesi grubu ses seviyesi kontrolü değişiklikleri için etkin kabul edilirken zaman aşımını milisaniye cinsinden gösterecek yapılandırma. Yapılandırma şu şekilde kullanılır:
Varsayılan değer | |
audioUseCarVolumeGroupEvent | Araba hizmeti yapılandırma dosyasında tanımlanan, birim gruplarına geri arama olaylarını etkinleştirecek yapılandırma. true olduğunda, istemciler birim gruplarını etkileyen olaylara ICarVolumeGroupEvent aracılığıyla geri çağrı alırlar. Etkinleştirildiğinde:
Varsayılan değer | |
config_useFixedVolume | frameworks/base/core/res/res/values/config.xml dosyasında tanımlanmıştır. Araç ses hizmetinin ses seviyesi kontrolünü yönetmesine izin vermek için true olarak ayarlanması gerekir. config_useFixedVolume bayrağı ayarlanmadığında veya false (varsayılan değer) değerine ayarlandığında, uygulamalar AudioManager birim yönetimi API'lerini çağırabilir ve yazılım karıştırıcısında ses düzeyini akış türüne göre değiştirebilir. Bu, diğer uygulamalar üzerindeki potansiyel etki nedeniyle ve yazılım karıştırıcısındaki ses seviyesi zayıflamasının, donanım yükselticisinden alındığında sinyalde daha az sayıda önemli bit bulunmasına neden olabilmesi nedeniyle istenmeyen bir durum olabilir. Yapılandırılmamış ve true şekilde ayarlanmış yeni cihazlar, AudioManager ses düzeyi ve ses kapatma API'leri aracılığıyla ses düzeyi değişikliklerini alır. | |
config_handleVolumeKeysInWindowManager | frameworks/base/core/res/res/values/config.xml dosyasında tanımlanan, araç ses hizmetinin ses seviyesi tuşu olaylarını engellemesine izin vermek için true olarak ayarlanmalıdır. false (varsayılan değer) olarak ayarlanırsa ses seviyesi tuşu etkinlikleri ön plan uygulamasına iletilebilir ve araç ses hizmeti dışındaki ses seviyesi tuşu olay yönetiminden olumsuz sonuçlara yol açabilir. |
Araç ses hizmeti yapılandırmaları
Android 13'ten önce, packages/services/Car/service/res/values/config.xml
dosyası için bir ürün yapılandırma katmanıyla araç hizmeti yapılandırmalarının üzerine yazıyordu (daha fazla bilgi edinmek için derlemeyi kaynak katmanlarıyla özelleştirme bölümüne bakın).
PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>
Yapılandırma dosyasının <path_to_overlay>
konumundan gerçek konuma kadar olan konumu packages/services/Car/service/res/values/
içermelidir.
Araba servisi RRO'ları
AAOS, Android 13'ten beri Çalışma Zamanı kaynak katmanlarını desteklemektedir. Araç ses yapılandırmasının değerini değiştirmek için bir RRO kullanın. Örneğin, otomotiv cuttlefish
referansı için device/google/cuttlefish/shared/auto/rro_overlay/
adresindeki RRO'lara bakın. audioUseDynamicRouting
yapılandırması device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml
dosyasında geçersiz kılınır.
<resources>
<bool name="audioUseDynamicRouting">true</bool>
...
Kaynak yer paylaşımı haritası device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml
dosyasında bulunur:
<overlay>
...
<item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml
tanımlanan kaynak yer paylaşımı bildirimi, com.android.car.updatable
olarak ayarlanan targetPackage
içerir.
Daha fazla bilgi için şu kaynaklara bakın:
Özellik özellikli API
Özellik cihazda etkinleştirilmişse yöntem true
döndürür, aksi takdirde false
döndürür. CarAudioManager#isAudioFeatureEnabled
API'sinde aktarılan parametre aşağıdakilerden biri olmalıdır:
-
AUDIO_FEATURE_DYNAMIC_ROUTING
-
AUDIO_FEATURE_VOLUME_GROUP_MUTING
-
AUDIO_FEATURE_OEM_AUDIO_SERVICE
-
AUDIO_FEATURE_VOLUME_GROUP_EVENTS
-
AUDIO_FEATURE_AUDIO_MIRRORING