מערכת ההפעלה Android Automotive OS (AAOS) משתמשת בדגלים ובהגדרות אישיות כדי לאפשר למשל, החל בניתוב דינמי לסימונים כלליים יותר של תכונות, בקרת עוצמת הקול משירות הרכב. סימונים בהגדרות AAOS הנוכחיים לאודיו מתוארים כאן.
סימון | המטרה | |
---|---|---|
audioUseDynamicRouting |
מוגדר בקובץ התצורה של השירות לרכב באופן הבא:
מפעילים ניתוב AAOS.
ההגדרה צריכה להיות true . כאשר false ,
וגם חלק גדול מה-CarAudioService , מושבתים ומערכת ההפעלה
לחזור להתנהגות ברירת המחדל שמתוארת
הגדרת מדיניות אודיו.
|
|
audioUseCarVolumeGroupMuting
| מוגדר בקובץ התצורה של שירות הרכב כדי לאפשר השתקה של אדם פרטי
קבוצות נפח אחסון. כאשר מוגדר ל-false (ערך ברירת המחדל), השתקה של
קבוצות מסוימות של נפח אחסון מושבתות. במקום זאת, ההשתקה משמשת להשתקה הראשית.
כשההגדרה מוגדרת לערך true , ההשתקה של קבוצות עוצמת הקול של הרכב מופעלת
ניתן להשתיק קבוצת עוצמת קול מסוימת בנפרד. כאשר true ,
השתקה של קבוצת עוצמת קול חייבת להיות מוטמעת ב
איכות אודיו עם HAL.
| |
audioUseHalDuckingSignals |
מוגדר בקובץ התצורה של השירות לרכב כדי לאפשר את
API של IAudioControl#onDevicesToDuckChange לעדכון HAL מתי
ברווז. כאשר true (ערך ברירת המחדל), ה-API מקבל אותות שמציינים
פלט מכשירים למיון נתונים ולשימושים ששומרים על המיקוד. כאשר false ,
לא מתבצעת קריאה ל-API. לא מתבצעת קריאה ל-API אלא אם
איכות אודיו עם HAL
מבצעת 'הכסה'.
|
|
config_oemCarService |
מוגדר בקובץ התצורה של השירות לרכב, זהו שם הרכיב של
שירות ההתאמה האישית של ה-OEM. יצרני ציוד מקורי יכולים לבחור להטמיע את השירות הזה כדי
להתאים אישית את הפעולות של השירות לרכב לפי כללי מדיניות שונים. אם יצרני ציוד מקורי בוחרים
להטמיע את הרכיב הזה, חייבים להטמיע שירות כדי להרחיב
OemCarService נחשף על ידי מערכת המנוע של מכונית, ואז מטמיעים
את שירותי הרכיבים הנדרשים. עבור שירותי אודיו ברכב באופן ספציפי, יצרני ציוד מקורי (OEM)
יכול להטמיע כל אחד משירותי המשנה של האודיו כדי לנהל פעולות אודיו. עבור
פרטים נוספים זמינים במאמר
שירות פלאגין של אודיו לרכב.
אם שם הרכיב לא תקין, CarService לא יתחבר
לכל שירות של OEM. שם הרכיב לא יכול להיות חבילה של צד שלישי. הוא
חייב להיות מותקן מראש. |
|
audioVolumeAdjustmentContextsVersion |
מוגדר בקובץ התצורה של השירות לרכב, התצורה שבוחרים של רשימת העדיפויות של התאמת עוצמת הקול. גרסה 1 כוללת את כל הקשרי האודיו, בסדר הזה:
גרסה 2 מוגבלת להקשרים הבאים, לפי הסדר הזה. גרסת ברירת המחדל היא
|
|
audioPersistMasterMuteState |
מוגדר בקובץ תצורה של שירות הרכב, תצורה לשמירה באופן גלובלי
מצב השתקה. כאשר true (ערך ברירת המחדל) Android משחזר את
מצב השתקה גלובלי בזמן האתחול. כשהערך בשדה audioUseCarVolumeGroupMuting הוא
true , אין לכך השפעה על המשך השתקה של שינויים במצב השתקה
השינויים מבוססים על קבוצות נפח אחסון נפרדות. ערך ברירת המחדל הוא
true ויש להחליף אותן אם לא ניתן להחליף השתקה של מאסטר
נמשך במכשיר מסוים. |
|
audioVolumeKeyEventTimeoutMs |
מוגדר בקובץ התצורה של השירות לרכב, תצורה שמציינת את זמן קצוב לתפוגה באלפיות שנייה בזמן שקבוצת נפח מכוניות נחשבת פעילה שינויים בבקרת עוצמת הקול במהלך אירועים מרכזיים של עוצמת הקול. ההגדרה משמשת ככה:
ערך ברירת המחדל הוא |
|
audioUseCarVolumeGroupEvent |
מוגדר בקובץ התצורה של השירות לרכב, הגדרה שמאפשרת קריאה חוזרת
אירועים לקבוצות נפח אחסון. כאשר true , הלקוחות מקבלים קריאה חוזרת (callback)
עד ICarVolumeGroupEvent לאירועים שמשפיעים על נפח
קבוצות. כשהיא מופעלת:
ערך ברירת המחדל הוא |
|
config_useFixedVolume
| הוגדר ב-frameworks/base/core/res/res/values/config.xml .
חובה להגדיר לערך true כדי לאפשר ניהול של שירותי האודיו ברכב
בקרת עוצמת הקול. כשהדגל config_useFixedVolume לא
מוגדר, או מוגדר לערך false (ערך ברירת המחדל), אפליקציות יכולות לקרוא
ממשקי API של AudioManager לניהול עוצמת קול ושינוי עוצמת הקול לפי
סוג הסטרימינג במיקסר התוכנה. יכול להיות שזה לא רצוי בגלל
השפעה פוטנציאלית על אפליקציות אחרות והעובדה שהפחתת הנפח
כשהאות מתקבל במגבר החומרה. מכשירים חדשים שלא
הוגדרה ומוגדרת ל-true לקבל שינויים של עוצמת הקול
דרך ממשקי ה-API של עוצמת הקול וההשתקה של AudioManager .
|
|
config_handleVolumeKeysInWindowManager |
מוגדר ב-frameworks/base/core/res/res/values/config.xml , חובה
מוגדרת לערך true כדי לאפשר לשירות האודיו ברכב ליירט
אירועים מרכזיים בנפח ההמרות. אם קובעים את עוצמת הקול ל-false (ערך ברירת המחדל)
אפשר להעביר אירועים מרכזיים לאפליקציה בחזית ולהוביל לרעה
תוצאות מניהול האירועים המרכזיים של עוצמת הקול מחוץ לשירות האודיו ברכב. |
הגדרות שירותי האודיו ברכב
לפני Android 13, ההגדרות של שירותי הרכב הוחלפו
עם שכבת-על של הגדרת מוצר (למידע נוסף:
התאמה אישית של ה-build באמצעות שכבות-על של משאבים)
לקובץ packages/services/Car/service/res/values/config.xml
.
PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>
המיקום של קובץ התצורה מ-<path_to_overlay>
למיקום בפועל
המיקום צריך לכלול את packages/services/Car/service/res/values/
.
RROs של שירות רכב
החל מ-Android 13, מערכת AAOS תומכת
שכבות-על של משאבים בסביבת זמן ריצה משתמשים ב-RRO כדי לשנות את
הערך של תצורת האודיו ברכב. לדוגמה, אפשר לעיין במסמכי ה-RRO של
ההתייחסות לcuttlefish
כלי רכב ב-
device/google/cuttlefish/shared/auto/rro_overlay/
.
ההגדרה של audioUseDynamicRouting
בוטלה ב
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>
מניפסט שכבת-העל של המשאב שהוגדר ב-
device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml
מכיל את הערך com.android.car.updatable
שהוגדר ל-targetPackage
.
מידע נוסף זמין במקורות המידע הבאים:
API שמופעל בו תכונות
השיטה מחזירה true
אם התכונה מופעלת במכשיר. אחרת
false
. ב-API CarAudioManager#isAudioFeatureEnabled
, הפרמטר
חייב להיות אחד מהתנאים הבאים:
AUDIO_FEATURE_DYNAMIC_ROUTING
AUDIO_FEATURE_VOLUME_GROUP_MUTING
AUDIO_FEATURE_OEM_AUDIO_SERVICE
AUDIO_FEATURE_VOLUME_GROUP_EVENTS
AUDIO_FEATURE_AUDIO_MIRRORING