डिफ़ॉल्ट रूप से, कार की ज़्यादातर सेवाएं ज़रूरी होती हैं और ये हमेशा चालू रहती हैं. हालांकि, कार की कुछ सेवाओं को वैकल्पिक के तौर पर तय किया जा सकता है, क्योंकि हो सकता है कि कुछ सुविधाएं हर कार में काम न करें.
वैकल्पिक सुविधाओं की सूची
कार के कंट्रोल से जुड़ी उन वैकल्पिक सुविधाओं की सूची यहां दी गई है जिन्हें चालू और बंद किया जा सकता है.
| कार के कंट्रोल से जुड़ी सुविधा | स्ट्रिंग मान |
|---|---|
| कार की ईवीएस सेवा | 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 |
कार के कंट्रोल से जुड़ी सुविधाएं चालू और बंद करना
अपने बिल्ड में सुविधाओं के लिए सहायता को दो तरीकों से कंट्रोल किया जा सकता है. पहला, रनटाइम रिसोर्स ओवरले (आरआरओ) की मदद से और दूसरा, व्हीकल हार्डवेयर ऐब्स्ट्रैक्शन लेयर (वीएचएएल) की मदद से.
आरआरओ का इस्तेमाल करना
रिसोर्स कॉन्फ़िगरेशन config_allowed_optional_car_features का इस्तेमाल करें. इसमें उन सभी वैकल्पिक सुविधाओं की सूची होती है जिन्हें चालू किया जा सकता है. जब कोई कार पहली बार बूट होती है, तो कार की वैकल्पिक सुविधाओं को नोट किया जाता है
. अगर वीएचएएल ने उन्हें ब्लॉक नहीं किया है, तो वे चालू हो जाती हैं.
आरआरओ के बारे में ज़्यादा जानने के लिए, रनटाइम पर किसी ऐप्लिकेशन के संसाधनों की वैल्यू बदलना लेख पढ़ें.
वीएचएएल का इस्तेमाल करना
व्हीकल हार्डवेयर ऐब्स्ट्रैक्शन लेयर (वीएचएएल), सुविधाओं को कंट्रोल करता है. इसके लिए, यह एक
ब्लॉकलिस्ट के तौर पर काम करता है, ताकि कुछ वैकल्पिक सुविधाओं को बंद किया जा सके. वीएचएएल की प्रॉपर्टी named
DISABLED_OPTIONAL_FEATURES में, ओवरले में मौजूद उन वैकल्पिक सुविधाओं की सूची होती है जिन्हें
बंद करना है. अगर यह प्रॉपर्टी मौजूद नहीं है, तो आरआरओ से मिली वैकल्पिक सुविधाओं की सूची में शामिल सभी सुविधाएं चालू हो जाती हैं. वीएचएएल के बारे में ज़्यादा जानने के लिए, वीएचएएल की खास जानकारी देखें.
डीबग शेल कमांड का इस्तेमाल करना
वैकल्पिक सुविधाओं को चालू या बंद करने का तीसरा तरीका, शेल कमांड के जोड़े का इस्तेमाल करना है. ये कमांड सिर्फ़ 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 |
वीएचएएल की प्रॉपर्टी
में, वीएचएएल की ओर से बंद की जाने वाली सुविधाएंDISABLED_OPTIONAL_FEATURES. |
mPendingEnabledFeatures |
रीबूट करने पर चालू होने वाली सुविधाएं. |
mPendingDisabledFeatures |
रीबूट करने के बाद बंद होने वाली सुविधाएं. |