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