โดยค่าเริ่มต้น บริการรถยนต์ส่วนใหญ่จะบังคับใช้และเปิดใช้อยู่เสมอ อย่างไรก็ตาม คุณสามารถกำหนดบริการรถยนต์ชุดย่อยเป็นไม่บังคับได้ เนื่องจากรถบางรุ่นอาจไม่รองรับฟีเจอร์บางอย่าง
รายการฟีเจอร์เสริม
ฟีเจอร์การควบคุมรถที่ไม่บังคับซึ่งคุณเปิดและปิดใช้ได้แสดงอยู่ในตารางด้านล่าง
ฟีเจอร์การควบคุมรถยนต์ | ค่าสตริง |
---|---|
บริการ 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 |
เปิดและปิดใช้ฟีเจอร์การควบคุมรถยนต์
คุณควบคุมการรองรับฟีเจอร์ในบิลด์ได้ 2 วิธี ได้แก่ การใช้การซ้อนทรัพยากรรันไทม์ (RRO) หรือผ่านเลเยอร์การแยกแยะฮาร์ดแวร์ของยานพาหนะ (VHAL)
ใช้ RRO
ใช้การกําหนดค่าทรัพยากรชื่อ config_allowed_optional_car_features
ซึ่งจะแสดงรายการฟีเจอร์ที่ไม่บังคับทั้งหมดที่คุณเปิดใช้ได้ เมื่อบูตรถเป็นครั้งแรก ระบบจะบันทึกฟีเจอร์เสริมของรถที่อาจเป็นไปได้ และเปิดใช้หาก VHAL ไม่ได้บล็อกไว้
ดูข้อมูลเพิ่มเติมเกี่ยวกับ RRO ได้ที่เปลี่ยนค่าทรัพยากรของแอปขณะรันไทม์
ใช้ VHAL
เลเยอร์การแยกแยะฮาร์ดแวร์ของยานพาหนะ (VHAL) จะควบคุมฟีเจอร์ต่างๆ โดยทำหน้าที่เป็นรายการที่บล็อกเพื่อปิดใช้ฟีเจอร์ที่ไม่บังคับบางรายการ พร็อพเพอร์ตี้ VHAL ที่มีชื่อว่า DISABLED_OPTIONAL_FEATURES
จะแสดงรายการฟีเจอร์ที่ไม่บังคับในการวางซ้อนที่จะปิดใช้ หากไม่มีพร็อพเพอร์ตี้นี้ ระบบจะเปิดใช้รายการฟีเจอร์ที่ไม่บังคับจาก RRO ทั้งหมด ดูข้อมูลเพิ่มเติมเกี่ยวกับ VHAL ได้ที่ภาพรวม VHAL
ใช้คำสั่ง Shell สำหรับการแก้ไขข้อบกพร่อง
วิธีที่สามในการควบคุมว่าจะเปิดหรือปิดใช้ฟีเจอร์ที่ไม่บังคับรายการใดนั้นใช้คำสั่งเชลล์ 2 รายการ ซึ่งใช้ได้เฉพาะในรุ่น 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 |
ฟีเจอร์ที่จะปิดใช้หลังจากรีบูต |