Android Automotive OS (AAOS) ใช้ค่าสถานะและการกำหนดค่าเพื่อเปิดใช้ฟีเจอร์ต่างๆ โดยเริ่มจากการกำหนดเส้นทางแบบไดนามิกไปจนถึงค่าสถานะฟีเจอร์ทั่วไปมากขึ้น เช่น การควบคุมระดับเสียงจากบริการของรถยนต์ โปรดดูแฟล็กการกำหนดค่า AAOS ปัจจุบันสำหรับการจัดการเสียง ที่นี่
ตั้งค่าสถานะ | วัตถุประสงค์ |
---|---|
audioUseDynamicRouting |
กำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์เพื่อ
เปิดใช้การกำหนดเส้นทาง AAOS
ต้องตั้งค่าเป็น true เมื่อปิดใช้false
การกำหนดเส้นทางและCarAudioService ส่วนใหญ่ และระบบปฏิบัติการ
จะกลับไปใช้ลักษณะการทำงานเริ่มต้นที่อธิบายไว้ใน
การกำหนดค่านโยบายเสียง
|
useCoreAudioRouting |
กำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์เพื่อ
เปิดใช้การจัดการการกำหนดเส้นทางเสียงหลักของ AAOS
เมื่อตั้งค่าเป็น true บริการเสียงในรถยนต์จะใช้
คำจำกัดความการกำหนดค่าที่ตั้งค่าด้วย
เครื่องมือการกำหนดค่านโยบายเสียง
หากตั้งค่าเป็น false การจัดการการกำหนดเส้นทางจะกลับไปใช้คำจำกัดความการผสมนโยบายเสียงแบบไดนามิกของบริการเสียงในรถยนต์ตามที่กำหนดค่าโดยใช้ audioUseDynamicRouting
|
useCoreAudioVolume |
กำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์เพื่อ
เปิดใช้การจัดการระดับเสียงหลักของ AAOS
เมื่อตั้งค่าเป็น true บริการเสียงในรถจะใช้
คำจำกัดความของกลุ่มระดับเสียงที่ตั้งค่าด้วย
เครื่องมือการกำหนดค่าเสียง
หากตั้งค่าเป็น false การจัดการระดับเสียงจะกลับไปใช้คำจำกัดความกลุ่มระดับเสียงเริ่มต้นของบริการเสียงในรถยนต์ตามที่กำหนดค่าไว้โดยใช้ audioUseDynamicRouting
|
audioUseCarVolumeGroupMuting |
กำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์เพื่อเปิดใช้การปิดเสียงของกลุ่มระดับเสียงแต่ละกลุ่ม
เมื่อตั้งค่าเป็น false (ค่าเริ่มต้น) ระบบจะปิดใช้การปิดเสียง
กลุ่มระดับเสียงแต่ละกลุ่ม แต่การปิดเสียงจะสลับการปิดเสียงหลักแทน
เมื่อตั้งค่าเป็น true ระบบจะเปิดใช้การปิดเสียงกลุ่มระดับเสียงในรถยนต์ และปิดเสียงกลุ่มระดับเสียงแต่ละกลุ่มแยกกันได้ เมื่อ true
ต้องใช้การปิดเสียงกลุ่มระดับเสียงที่
HAL การควบคุมเสียง
|
audioUseHalDuckingSignals |
กำหนดไว้ในไฟล์กำหนดค่าบริการในรถยนต์เพื่อเปิดใช้ IAudioControl#onDevicesToDuckChange API เพื่อแจ้ง HAL เมื่อใดที่ควรลดระดับเสียง เมื่อ true (ค่าเริ่มต้น) API จะได้รับสัญญาณที่ระบุอุปกรณ์เอาต์พุตที่จะลดระดับเสียงและลักษณะการใช้งานที่ควรให้ความสำคัญ เมื่อ false ,
ระบบจะไม่เรียกใช้ API ระบบจะไม่เรียกใช้ API เว้นแต่ว่า
Audio Control HAL
จะใช้การดั๊กกิ้ง
|
config_oemCarService |
ชื่อคอมโพเนนต์สำหรับบริการปรับแต่ง OEM ซึ่งกำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์ OEM สามารถเลือกใช้บริการนี้เพื่อ
ปรับแต่งการดำเนินการของบริการรถยนต์สำหรับนโยบายต่างๆ หาก OEM เลือกที่จะ
ใช้คอมโพเนนต์นี้ จะต้องใช้บริการเพื่อขยาย
OemCarService ที่ car-lib แสดง แล้วใช้
บริการคอมโพเนนต์ที่จำเป็น สำหรับบริการเสียงในรถยนต์โดยเฉพาะ OEM
สามารถใช้บริการย่อยด้านเสียงใดก็ได้เพื่อจัดการการดำเนินการด้านเสียง โปรดดูรายละเอียดที่
บริการปลั๊กอินเสียงในรถยนต์
หากชื่อคอมโพเนนต์ไม่ถูกต้อง CarService จะเชื่อมต่อกับบริการ OEM ไม่ได้
ชื่อคอมโพเนนต์ต้องไม่ใช่แพ็กเกจของบุคคลที่สาม ต้อง
ติดตั้งไว้ล่วงหน้า |
audioVolumeAdjustmentContextsVersion |
กำหนดไว้ในไฟล์กำหนดค่าบริการรถยนต์ ซึ่งเป็นการกำหนดค่าเพื่อเลือก เวอร์ชันของรายการลำดับความสำคัญของบริบทการปรับระดับเสียง เวอร์ชัน 1 มีบริบทเสียงทั้งหมดตามลำดับต่อไปนี้
เวอร์ชัน 2 ใช้ได้เฉพาะในบริบทต่อไปนี้ตามลำดับ เวอร์ชันเริ่มต้นคือ
|
audioPersistMasterMuteState |
กำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์ ซึ่งเป็นการกำหนดค่าเพื่อคงสถานะปิดเสียงส่วนกลาง
ไว้ เมื่อ true (ค่าเริ่มต้น) Android จะคืนค่า
สถานะปิดเสียงทั่วโลกเมื่อเปิดเครื่อง เมื่อ audioUseCarVolumeGroupMuting เป็น
true การดำเนินการนี้จะไม่มีผลต่อการคงการเปลี่ยนแปลงการปิดเสียง เนื่องจาก
การเปลี่ยนแปลงการปิดเสียงจะอิงตามกลุ่มระดับเสียงแต่ละกลุ่ม ค่าเริ่มต้นตั้งเป็น
true และต้องเขียนทับเมื่อไม่ควร
บันทึกการปิดเสียงหลักสำหรับอุปกรณ์ |
audioVolumeKeyEventTimeoutMs |
กำหนดไว้ในไฟล์กำหนดค่าบริการรถยนต์ การกำหนดค่าเพื่อระบุ การหมดเวลาเป็นมิลลิวินาทีขณะที่ระบบถือว่ากลุ่มระดับเสียงของรถยนต์ทำงานอยู่สำหรับการเปลี่ยนแปลงการควบคุมระดับเสียง ระหว่างเหตุการณ์ปุ่มปรับระดับเสียง ระบบจะใช้การกำหนดค่า ดังนี้
ค่าเริ่มต้นคือ |
audioUseCarVolumeGroupEvent |
กำหนดไว้ในไฟล์กำหนดค่าบริการในรถยนต์ ซึ่งเป็นการกำหนดค่าเพื่อเปิดใช้การเรียกกลับ
เหตุการณ์ไปยังกลุ่มระดับเสียง เมื่อ true ไคลเอ็นต์จะได้รับการโทรกลับ
ผ่าน ICarVolumeGroupEvent ไปยังเหตุการณ์ที่ส่งผลต่อกลุ่ม
ระดับเสียง เมื่อเปิดใช้แล้ว
ค่าเริ่มต้นคือ |
config_useFixedVolume |
กำหนดไว้ใน frameworks/base/core/res/res/values/config.xml
ต้องตั้งค่าเป็น true เพื่ออนุญาตให้บริการเสียงในรถจัดการ
การควบคุมระดับเสียง เมื่อไม่ได้ตั้งค่าconfig_useFixedVolume หรือตั้งค่าเป็น false (ค่าเริ่มต้น) แอปจะเรียกใช้
AudioManager API การจัดการระดับเสียงและเปลี่ยนระดับเสียงตาม
ประเภทสตรีมในมิกเซอร์ซอฟต์แวร์ได้ ซึ่งอาจไม่เป็นที่ต้องการเนื่องจาก
อาจส่งผลต่อแอปอื่นๆ และการลดทอนระดับเสียงใน
มิกเซอร์ซอฟต์แวร์อาจส่งผลให้มีบิตสำคัญน้อยลงใน
สัญญาณเมื่อได้รับที่เครื่องขยายเสียงฮาร์ดแวร์ อุปกรณ์ใหม่ที่ยังไม่ได้
กำหนดค่าและตั้งค่าให้true รับการเปลี่ยนแปลงระดับเสียง
ผ่าน AudioManager API ระดับเสียงและการปิดเสียง
|
config_handleVolumeKeysInWindowManager |
กำหนดไว้ใน frameworks/base/core/res/res/values/config.xml ต้อง
ตั้งค่าเป็น true เพื่ออนุญาตให้บริการเสียงในรถสกัดกั้น
เหตุการณ์สำคัญของปุ่มปรับระดับเสียง หากตั้งค่าเป็น false (ค่าเริ่มต้น) ระบบจะส่งต่อเหตุการณ์สำคัญของปุ่มปรับระดับเสียงไปยังแอปที่อยู่เบื้องหน้าได้ ซึ่งอาจส่งผลเสียจากการจัดการเหตุการณ์สำคัญของปุ่มปรับระดับเสียงภายนอกบริการเสียงในรถ |
audioUseMinMaxActivationVolume |
กำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์เพื่อเปิดใช้
ระดับเสียงเปิดใช้งานขั้นต่ำและสูงสุด เมื่อ
true คุณจะปรับดัชนีการเพิ่มระดับเสียงได้เนื่องจาก
การจัดการระดับเสียงการเปิดใช้งานขั้นต่ำและสูงสุด เมื่อ
false (ค่าเริ่มต้น) ปริมาณการเปิดใช้งานขั้นต่ำและสูงสุดจะไม่มีผล
|
audioUseFadeManagerConfiguration |
กำหนดไว้ในไฟล์การกำหนดค่าบริการในรถยนต์เพื่อเปิดใช้
ลักษณะการทำงานเมื่อสูญเสียโฟกัสเสียงที่ระบบบังคับใช้ เมื่อ true ,
เฟรมเวิร์กเสียงในรถยนต์จะแยกวิเคราะห์คำจำกัดความของการกำหนดค่าการเฟดเสียงในรถยนต์และ
ใช้ FadeManagerConfiguration ที่เกี่ยวข้องเมื่อส่ง
การสูญเสียโฟกัสเสียง เมื่อ false (ค่าเริ่มต้น) ระบบจะไม่
บังคับใช้ลักษณะการทำงานแบบจางเมื่อแอปสูญเสียโฟกัสเสียง
|
การกำหนดค่าบริการเสียงในรถ
ก่อน Android 13 การกำหนดค่าบริการในรถจะถูกเขียนทับ
ด้วยการวางซ้อนการกำหนดค่าผลิตภัณฑ์ (ดูข้อมูลเพิ่มเติมได้ที่
การปรับแต่งบิลด์ด้วยการวางซ้อนทรัพยากร)
สำหรับไฟล์ packages/services/Car/service/res/values/config.xml
PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>
ตำแหน่งของไฟล์การกำหนดค่าจาก <path_to_overlay>
ไปยังตำแหน่งจริง
ควรมี packages/services/Car/service/res/values/
RRO ของบริการรถยนต์
ตั้งแต่ Android 13 เป็นต้นมา AAOS รองรับการซ้อนทับทรัพยากรขณะรันไทม์
ใช้ RRO เพื่อเปลี่ยน
ค่าของการกำหนดค่าเสียงในรถ เช่น ดู RRO สำหรับการอ้างอิงยานยนต์ cuttlefish
ใน device/google/cuttlefish/shared/auto/rro_overlay/
ระบบจะลบล้างaudioUseDynamicRouting
config ใน
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml
<resources>
<bool name="audioUseDynamicRouting">true</bool>
...
แผนที่ซ้อนทับทรัพยากรอยู่ใน
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml
:
<overlay>
...
<item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>
ไฟล์ Manifest ของภาพซ้อนทับทรัพยากรที่กำหนดไว้ใน
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml
มีtargetPackage
ที่ตั้งค่าเป็น com.android.car.updatable
ดูข้อมูลเพิ่มเติมได้จากแหล่งข้อมูลต่อไปนี้
API ที่เปิดใช้ฟีเจอร์
เมธอดจะแสดงผล true
หากเปิดใช้ฟีเจอร์ในอุปกรณ์ หรือ false
หากไม่ได้เปิดใช้ ใน CarAudioManager#isAudioFeatureEnabled
API พารามิเตอร์
ที่ส่งผ่านต้องเป็นอย่างใดอย่างหนึ่งต่อไปนี้
AUDIO_FEATURE_DYNAMIC_ROUTING
AUDIO_FEATURE_VOLUME_GROUP_MUTING
AUDIO_FEATURE_OEM_AUDIO_SERVICE
AUDIO_FEATURE_VOLUME_GROUP_EVENTS
AUDIO_FEATURE_AUDIO_MIRRORING