अपना प्रोजेक्ट सेट अप करें

इस पेज पर, Car App library को इंस्टॉल करने का तरीका बताया गया है. साथ ही, इसमें आपके ऐप्लिकेशन के लिए मेनिफ़ेस्ट फ़ाइल को कॉन्फ़िगर करने का तरीका भी बताया गया है.

कार ऐप्लिकेशन लाइब्रेरी इंस्टॉल करना

अपने ऐप्लिकेशन में लाइब्रेरी जोड़ने के लिए, Jetpack लाइब्रेरी का रिलीज़ पेज देखें.

अपने ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइलों को कॉन्फ़िगर करना

कार ऐप्लिकेशन बनाने से पहले, आपको अपने ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइलें कॉन्फ़िगर करनी होंगी.

CarAppService का एलान करना

होस्ट, CarAppService को लागू करने के तरीके के ज़रिए आपके ऐप्लिकेशन से कनेक्ट होता है. इस सेवा के बारे में मेनिफ़ेस्ट फ़ाइल में बताया जाता है, ताकि होस्ट को आपके ऐप्लिकेशन के बारे में पता चल सके और वह उससे कनेक्ट हो सके.

आपको अपने ऐप्लिकेशन की कैटगरी की जानकारी भी देनी होगी. इसके लिए, आपको अपने ऐप्लिकेशन के इंटेंट फ़िल्टर के <category> एलिमेंट का इस्तेमाल करना होगा. इस एलिमेंट के लिए इस्तेमाल की जा सकने वाली वैल्यू के लिए, ऐप्लिकेशन की उन कैटगरी की सूची देखें जिनमें यह सुविधा काम करती है.

नीचे दिए गए कोड स्निपेट में बताया गया है कि मेनिफ़ेस्ट में, दिलचस्पी के पॉइंट वाले ऐप्लिकेशन के लिए कार ऐप्लिकेशन सेवा का एलान कैसे किया जाता है:

<application>
    ...
   <service
       ...
        android:name=".MyCarAppService"
        android:exported="true">
      <intent-filter>
        <action android:name="androidx.car.app.CarAppService"/>
        <category android:name="androidx.car.app.category.POI"/>
      </intent-filter>
    </service>

    ...
<application>

ऐप्लिकेशन की इन कैटगरी के लिए, इस सुविधा का इस्तेमाल किया जा सकता है

CarAppService का एलान करना में बताए गए तरीके से CarAppService का एलान करते समय, आपको अपने ऐप्लिकेशन की कैटगरी का एलान भी करना होगा. इसके लिए, इंटेंट फ़िल्टर में इनमें से एक या एक से ज़्यादा वैल्यू जोड़ें.

हर कैटगरी के बारे में ज़्यादा जानकारी और किसी कैटगरी की ज़रूरी शर्तें पूरी करने के लिए, कार के लिए Android ऐप्लिकेशन की क्वालिटी देखें.

इस कैटगरी का इस्तेमाल, लोगों को Play Store में उनके काम के ऐप्लिकेशन खोजने में मदद करने के लिए किया जाता है.

ऐप्लिकेशन का नाम और आइकॉन तय करना

सिस्टम यूज़र इंटरफ़ेस (यूआई) में अपने ऐप्लिकेशन को दिखाने के लिए, carPermissionActivityLayout को होस्ट के लिए ऐप्लिकेशन का नाम और आइकॉन तय करना होगा. ऐप्लिकेशन का नाम और होस्ट की ओर से इस्तेमाल किया गया आइकॉन बताने के लिए, CarAppService के label और icon एट्रिब्यूट का इस्तेमाल करें:

...
<service
   android:name=".MyCarAppService"
   android:exported="true"
   android:label="@string/my_app_name"
   android:icon="@drawable/my_app_icon">
   ...
</service>
...

अगर आपने <service> एलिमेंट में कोई लेबल या आइकॉन नहीं दिया है, तो होस्ट, <application> एलिमेंट में दी गई वैल्यू का इस्तेमाल करेगा.

पसंद के मुताबिक थीम सेट करना

कार में मौजूद ऐप्लिकेशन के लिए, पसंद के मुताबिक थीम सेट करने के लिए:

  1. अपनी मेनिफ़ेस्ट फ़ाइल में <meta-data> एलिमेंट जोड़ें:

    <meta-data
        android:name="androidx.car.app.theme"
        android:resource="@style/MyCarAppTheme />
    
  2. अपनी पसंद के मुताबिक कार ऐप्लिकेशन की थीम के लिए एट्रिब्यूट सेट करने के लिए, अपने स्टाइल रिसोर्स का एलान करें:

    <resources>
      <style name="MyCarAppTheme">
        <item name="carColorPrimary">@color/my_primary_car_color</item>
        <item name="carColorPrimaryDark">@color/my_primary_dark_car_color</item>
        <item name="carColorSecondary">@color/my_secondary_car_color</item>
        <item name="carColorSecondaryDark">@color/my_secondary_dark_car_color</item>
        <item name="carPermissionActivityLayout">@layout/my_custom_background</item>
      </style>
    </resources>
    

Car App API लेवल

Car App Library, अपने एपीआई लेवल तय करती है. इससे आपको यह पता चल सकता है कि किसी वाहन पर, टेंप्लेट होस्ट के साथ लाइब्रेरी की कौनसी सुविधाएं काम करती हैं. होस्ट के साथ काम करने वाले सबसे नए Car App API लेवल को वापस पाने के लिए, getCarAppApiLevel तरीके का इस्तेमाल करें.

अपनी AndroidManifest.xml फ़ाइल में, Car App API के उस कम से कम लेवल के बारे में बताएं जिस पर आपका ऐप्लिकेशन काम करता है:

<manifest ...>
    <application ...>
        <meta-data
            android:name="androidx.car.app.minCarApiLevel"
            android:value="1"/>
    </application>
</manifest>

पिछली सुविधाओं के साथ काम करने की सुविधा बनाए रखने और किसी सुविधा का इस्तेमाल करने के लिए ज़रूरी एपीआई लेवल के बारे में जानकारी पाने के लिए, RequiresCarApi एनोटेशन का दस्तावेज़ देखें. Car App Library की किसी सुविधा का इस्तेमाल करने के लिए, किस एपीआई लेवल की ज़रूरत होती है, इसकी परिभाषा जानने के लिए CarAppApiLevels का रेफ़रंस दस्तावेज़ देखें.