מערכת ההפעלה Android Automotive (AAOS) משתמשת בדגלים ובהגדרות כדי להפעיל תכונות שונות, החל מניתוב דינמי ועד לדגלי תכונות כלליים יותר, כמו שליטה בעוצמת הקול משירות הרכב. כאן מפורטים דגלי ההגדרה הנוכחיים של AAOS לניהול אודיו.
סימון | מטרה |
---|---|
audioUseDynamicRouting |
מוגדר בקובץ ההגדרות של שירות הרכב כדי להפעיל ניתוב AAOS.
ההגדרה צריכה להיות true . אם הערך הוא false , הניתוב וחלק גדול מההגדרות של CarAudioService מושבתים, ומערכת ההפעלה חוזרת להתנהגות ברירת המחדל שמתוארת במאמר הגדרת מדיניות אודיו.
|
useCoreAudioRouting |
מוגדר בקובץ ההגדרות של שירות הרכב כדי להפעיל את הניהול של ניתוב האודיו בליבת AAOS.
כשהערך מוגדר ל-true , שירות האודיו ברכב משתמש בהגדרות שנקבעו באמצעות מנוע מדיניות האודיו שניתן להגדרה.
אם הערך מוגדר ל-false , ניהול הניתוב חוזר להשתמש בהגדרה של מדיניות האודיו הדינמית של שירות האודיו ברכב, כפי שהוגדר באמצעות audioUseDynamicRouting .
|
useCoreAudioVolume |
מוגדר בקובץ ההגדרות של שירות הרכב כדי להפעיל את ניהול עוצמת הקול של ליבת האודיו ב-AAOS.
כשהערך מוגדר ל-true , שירות האודיו ברכב משתמש בהגדרות של קבוצות עוצמת הקול שהוגדרו באמצעות מנוע מדיניות האודיו שניתן להגדרה.
אם הערך מוגדר כ-false , ניהול עוצמת הקול חוזר להשתמש בהגדרת ברירת המחדל של קבוצת עוצמת הקול של שירות האודיו ברכב, כפי שהוגדר באמצעות audioUseDynamicRouting .
|
audioUseCarVolumeGroupMuting |
מוגדר בקובץ התצורה של שירות הרכב כדי להשתיק קבוצות של עוצמת קול בנפרד. כשהערך מוגדר כ-false (ברירת המחדל), השתקת קבוצות עוצמת קול ספציפיות מושבתת. במקום זאת, ההשתקה מחליפה את ההשתקה הראשית.
כשמגדירים את האפשרות true , ההשתקה של קבוצת עוצמת הקול ברכב מופעלת, ואפשר להשתיק כל קבוצת עוצמת קול בנפרד. כשמשתיקים קבוצת עוצמת קול ב-true , צריך להטמיע את ההשתקה ב-Audio Control HAL.
|
audioUseHalDuckingSignals |
מוגדר בקובץ ההגדרות של שירות הרכב כדי להפעיל את IAudioControl#onDevicesToDuckChange API ולעדכן את HAL מתי להנמיך את עוצמת הקול. כשמזינים true (ערך ברירת המחדל), ה-API מקבל אותות שמציינים אילו מכשירי פלט צריך להנמיך ואילו שימושים מחזיקים את המיקוד. כש-false ,
לא מתבצעת קריאה ל-API. ה-API לא מופעל אלא אם Audio Control HAL מיישם ducking.
|
config_oemCarService |
השם הזה מוגדר בקובץ ההגדרות של שירות הרכב, והוא שם הרכיב של שירות ההתאמה האישית של יצרן הציוד המקורי. יצרני ציוד מקורי יכולים להטמיע את השירות הזה כדי להתאים אישית פעולות של שירותים לרכב בהתאם לכללי מדיניות שונים. אם יצרני ציוד מקורי בוחרים להטמיע את הרכיב הזה, הם צריכים להטמיע שירות כדי להרחיב את OemCarService שנחשף על ידי car-lib, ואז להטמיע את שירותי הרכיבים הנדרשים. במקרה של שירות אודיו לרכב, יצרני ציוד מקורי (OEM)
יכולים להטמיע כל אחד משירותי המשנה של האודיו כדי לנהל פעולות אודיו. פרטים נוספים זמינים במאמר בנושא Car Audio Plugin Service.
אם שם הרכיב לא תקין, 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 (ערך ברירת המחדל), אפליקציות יכולות לקרוא לממשקי ה-API לניהול עוצמת הקול AudioManager ולשנות את עוצמת הקול לפי סוג הזרם במיקסר התוכנה. יכול להיות שזה לא רצוי בגלל ההשפעה הפוטנציאלית על אפליקציות אחרות, ובגלל העובדה שהנחתת עוצמת הקול במיקסר התוכנה יכולה להוביל לכך שיהיו פחות ביטים משמעותיים זמינים באות כשהוא מתקבל במגבר החומרה. מכשירים חדשים שלא הוגדרו ושמוגדרים לקבל שינויים בעוצמת הקול דרך ממשקי ה-API של עוצמת הקול וההשתקה AudioManager .true
|
config_handleVolumeKeysInWindowManager |
מוגדר ב-frameworks/base/core/res/res/values/config.xml , צריך להגדיר אותו כ-true כדי לאפשר לשירות האודיו ברכב ליירט אירועים של מקשי עוצמת הקול. אם הערך מוגדר ל-false (ערך ברירת המחדל), אירועים מרכזיים של מקשי עוצמת הקול יכולים להיות מועברים לאפליקציה שפועלת בחזית, ועלולים להוביל לתוצאות שליליות מניהול אירועים מרכזיים של מקשי עוצמת הקול מחוץ לשירות האודיו ברכב. |
audioUseMinMaxActivationVolume |
מוגדר בקובץ ההגדרות של שירות הרכב כדי להפעיל
נפח הפעלה מינימלי ומקסימלי. כאשר
true , אפשר לשנות את אינדקס עוצמת הקול בגלל
ניהול עוצמת הקול המינימלית והמקסימלית להפעלה. כאשר
false (ערך ברירת המחדל), נפח ההפעלה המינימלי והמקסימלי לא נכנס לתוקף.
|
audioUseFadeManagerConfiguration |
מוגדר בקובץ התצורה של שירות המכונית כדי להפעיל
התנהגות של אובדן מיקוד אודיו שנאכפת על ידי המערכת. כש-true ,
car audio framework מנתח את ההגדרות של עוצמת הקול של האודיו ברכב ומחיל את FadeManagerConfiguration המתאים כשמתבצעת שליחה של
איבוד מיקוד האודיו. כשהערך הוא 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/
.
הגבלות על זכויות שימוש בשירותי רכב
החל מ-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
מכיל את targetPackage
שמוגדר כ-com.android.car.updatable
.
מידע נוסף זמין במקורות המידע הבאים:
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