בקרת התכונות של שירותי הרכב

כברירת מחדל, רוב השירותים לרכב הם חובה והם תמיד מופעלים. אבל אפשר להגדיר קבוצת משנה של שירותים לרכב כאופציונלי, כי יכול להיות שתכונות מסוימות לא כך שתהיה תמיכה בכל מכונית.

רשימת תכונות אופציונליות

התכונות האופציונליות של אמצעי הבקרה ברכב שניתן להפעיל ולהשבית מפורטות בטבלה בהמשך.

תכונות של אמצעי הבקרה ברכב ערך מחרוזת
שירות לרכבים חשמליים (EVS) car_evs_service
שירות אבטחת מפתחות ניסיוני לרכב experimental_car_keyguard_service
שירות ניווט לרכב car_navigation_service
שירות חיבור לנוסע car_occupant_connection_service
שירות גישה מרחוק לרכב car_remote_access_service
שירות מכשיר מרחוק של הרכב car_remote_device_service
שירות טלמטריה של רכב car_telemetry_service
שירות הודעות למשתמש במכונית com.android.car.user.CarUserNoticeService
שירות ביתי של אשכול cluster_home_service
שירות אבחון diagnostic
מוּדעוּת של מספר האורחים occupant_awareness
שירות מעקב אחר האחסון storage_monitoring
שירות מפות של כלי רכב vehicle_map_service

הפעלה והשבתה של תכונות השליטה ברכב

יש שתי דרכים לשלוט בתמיכה בתכונות בגרסאות ה-build שלכם, באמצעות שכבות-על של משאבים בסביבת זמן ריצה (RRO) או דרך שכבת האבסטרציה של חומרת הרכב (VHAL).

שימוש ב-RRO

להשתמש בהגדרת המשאב בשם config_allowed_optional_car_features, מפרטת את כל התכונות האופציונליות שניתן להפעיל. באתחול של מכונית, ייתכן תכונות אופציונליות לרכב מסומנות ומופעלות אם הן לא נכללות ברשימת החסימה של VHAL. מידע נוסף על RRO זמין במאמר שינוי הערך של משאבים של אפליקציה בזמן ריצה

שימוש ב-VHAL

השכבה Abstraction של החומרה לרכב (VHAL) שולטת בתכונות על ידי הפעלת רשימת חסימה להשבתה של תכונות אופציונליות ספציפיות. נכס VHAL שנקרא DISABLED_OPTIONAL_FEATURES מפרט את התכונות האופציונליות בשכבת-העל יושבתו. אם הנכס הזה לא קיים, תוצג רשימה של תכונות אופציונליות מ- ה-RRO מופעלים. לקבלת מידע נוסף על VHAL, אפשר לעיין סקירה כללית של VHAL.

שימוש בפקודות מעטפת לניפוי באגים

דרך שלישית לקבוע אילו תכונות אופציונליות להפעיל או להשבית היא באמצעות של כמה פקודות מעטפת, שזמינות רק בגרסאות build של user-debug שמסופקים לשימוש על ידי מפתחים. הטבלה ב רשימת התכונות האופציונליות כוללת את הערכים לשימוש במקום <FEATURE_STRING_VALUE>.

כדי להפעיל תכונה:

adb root; adb shell cmd car_service enable-feature <FEATURE_STRING_VALUE>; adb reboot

כדי להשבית תכונה:

adb root; adb shell cmd car_service disable-feature <FEATURE_STRING_VALUE>; adb reboot

איך בודקים אילו תכונות מופעלות

במהלך ניפוי באגים של בעיות שקשורות לתכונות ספציפיות, כדאי לדעת אילו תכונות והסיבה לכך. כדי להוריד מידע על feature-related, מריצים את:

adb shell dumpsys car_service --services CarFeatureController

הפקודה הזו מפרטת את סוגי המידע שמוצגים בהמשך.

ערך תיאור
mEnabledFeatures תכונות שמופעלות כרגע.
mDefaultEnabledFeaturesFromConfig התכונות האופציונליות שמפורטות בconfig_allowed_optional_car_features.
mDisabledFeaturesFromVhal תכונות שצוינו ב-VHAL יושבתו במאפיין VHAL, DISABLED_OPTIONAL_FEATURES
mPendingEnabledFeatures תכונות שיופעלו לאחר הפעלה מחדש.
mPendingDisabledFeatures תכונות שיושבתו אחרי הפעלה מחדש.