इंस्टॉल के समय डिलीवरी कॉन्फ़िगर करना

फ़ीचर मॉड्यूल की मदद से, कुछ सुविधाओं और संसाधनों को अलग-अलग किया जा सकता है अपने ऐप्लिकेशन के बेस मॉड्यूल से डाउनलोड करें और उन्हें अपने ऐप्लिकेशन बंडल में शामिल करें. आप इसके बाद, डिलीवरी के विकल्पों को पसंद के मुताबिक बनाएं यह कंट्रोल करने के लिए कि Android 5.0 (एपीआई लेवल 21) या इसके बाद के वर्शन वाले डिवाइस कब और कैसे काम करेंगे अपने ऐप्लिकेशन की सुविधाएं डाउनलोड करें.

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

अगर आपको समय के साथ, धीरे-धीरे ऐप्लिकेशन की सुविधाओं में नए मॉड्यूल जोड़ने हैं, तो अपने ऐप्लिकेशन के काम करने के तरीके को बदलकर या बेहतर डिलीवरी के विकल्पों को पसंद के मुताबिक बनाने के लिए, ऐसा सुविधा मॉड्यूल बनाकर किया जा सकता है. ये मॉड्यूल, इंस्टॉल के समय के लिए कॉन्फ़िगर किए जाते हैं डिलीवरी. इसका मतलब है कि किसी फ़ीचर को फ़ीचर मॉड्यूल के तौर पर मॉड्यूल किया जा सकता है. हालांकि, ऐसा नहीं किया जा सकता अतिरिक्त विकल्पों को सक्षम करता है, ताकि जब कोई उपयोगकर्ता आपका है.

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

इस सेक्शन में, इंस्टॉल के समय के लिए फ़ीचर मॉड्यूल बनाने का तरीका बताया गया है डिलीवरी. शुरू करने से पहले, पक्का करें कि Android Studio 3.5 या इसके बाद वाले वर्शन और Android Gradle प्लग इन 3.5.0 का इस्तेमाल करके या उससे ज़्यादा.

इंस्टॉल के समय डिलीवरी के लिए एक नया मॉड्यूल कॉन्फ़िगर करें

नया फ़ीचर मॉड्यूल बनाने का सबसे आसान तरीका है Android Studio 3.5 या इसके बाद वाला वर्शन हो. सुविधा वाले मॉड्यूल में बेस ऐप्लिकेशन मॉड्यूल पर निर्भर करता है. उन्हें सिर्फ़ मौजूदा मॉड्यूल में जोड़ा जा सकता है ऐप प्रोजेक्ट पर जाएं.

Android Studio का इस्तेमाल करके, अपने ऐप्लिकेशन प्रोजेक्ट में फ़ीचर मॉड्यूल जोड़ने के लिए, इस तरह आगे बढ़ें:

  1. अगर आपने अभी तक ऐसा नहीं किया है, तो अपना ऐप्लिकेशन प्रोजेक्ट IDE में खोलें.
  2. फ़ाइल > चुनें नया > नया मॉड्यूल चुनें.
  3. नया मॉड्यूल बनाएं डायलॉग में, डाइनैमिक फ़ीचर मॉड्यूल और आगे बढ़ें पर क्लिक करें.
  4. अपना नया मॉड्यूल कॉन्फ़िगर करें सेक्शन में, फ़ॉलो किया जा रहा है:
    1. अपने ऐप्लिकेशन प्रोजेक्ट के लिए, बेस ऐप्लिकेशन मॉड्यूल चुनें. ड्रॉपडाउन मेन्यू खोलें.
    2. किसी मॉड्यूल का नाम तय करें. आईडीई इस नाम का इस्तेमाल, मॉड्यूल का Gradle सबप्रोजेक्ट Gredle की सेटिंग फ़ाइल. आसानी से अपने कैलेंडर में जोड़ें. अगर आपको अपना ऐप्लिकेशन बंडल बनाना है, तो Gradle, सब-प्रोजेक्ट के आखिरी एलिमेंट का इस्तेमाल करता है <manifest split> एट्रिब्यूट को इंजेक्ट करने के लिए नाम सुविधा मॉड्यूल का मेनिफ़ेस्ट.
    3. मॉड्यूल के पैकेज का नाम बताएं. डिफ़ॉल्ट रूप से, Android Studio एक ऐसे पैकेज नाम का सुझाव देता है, जो बेस मॉड्यूल और पिछले चरण में तय किए गए मॉड्यूल के नाम की जानकारी दें.
    4. वह कम से कम एपीआई लेवल चुनें जिस पर आपको मॉड्यूल काम करना है. यह वैल्यू, बेस मॉड्यूल की वैल्यू से मेल खानी चाहिए.
  5. आगे बढ़ें पर क्लिक करें.
  6. मॉड्यूल डाउनलोड के विकल्प सेक्शन में, इन चीज़ों को पूरा करें:

    1. मॉड्यूल का शीर्षक तय करने के लिए, ज़्यादा से ज़्यादा 50 वर्ण इस्तेमाल करें. आपके ऐप्लिकेशन का बेस मॉड्यूल में मॉड्यूल का शीर्षक string संसाधन होता है, जिसे आप अनुवाद कर सकते हैं. Android Studio का इस्तेमाल करके मॉड्यूल बनाते समय, IDE आपके लिए, स्ट्रिंग रिसॉर्स को बेस मॉड्यूल में जोड़ता है और इंजेक्ट करता है सुविधा मॉड्यूल के मेनिफ़ेस्ट में नीचे दी गई एंट्री:

      <dist:module
          ...
          dist:title="@string/feature_title">
      </dist:module>
      
    2. इंस्टॉल-टाइम शामिल करने के नीचे मौजूद ड्रॉपडाउन मेन्यू में, शामिल करें मॉड्यूल. Android Studio, मॉड्यूल के मेनिफ़ेस्ट में बताया गया है:

      <dist:module ... >
        <dist:delivery>
            <dist:install-time />
        </dist:delivery>
      </dist:module>
      

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

    3. अगर आपको यह मॉड्यूल उपलब्ध कराना है, तो Fused के बगल में मौजूद बॉक्स को चुनें Android 4.4 (एपीआई लेवल 20) और इससे पहले के वर्शन वाले डिवाइसों के लिए, जिनमें यह शामिल है मल्टी-APK. इसका मतलब है कि इसे उन डिवाइसों पर हटाया जा सकता है जिन पर यह ऐप्लिकेशन काम नहीं करता विभाजित APK डाउनलोड और इंस्टॉल करना. Android Studio, मॉड्यूल के मेनिफ़ेस्ट में बताया गया है.

      <dist:module ...>
          <dist:fusing dist:include="true | false" />
      </dist:module>
      
  7. पूरा करें पर क्लिक करें.

Android Studio आपका मॉड्यूल बनाने के बाद, इसके कॉन्टेंट की जांच करें को प्रोजेक्ट पैनल से हटाएं (व्यू > टूल Windows > प्रोजेक्ट चुनें डालें). डिफ़ॉल्ट कोड, संसाधन, और संगठन ये होने चाहिए बिलकुल स्टैंडर्ड ऐप्लिकेशन मॉड्यूल से मिलते-जुलते हैं.

इंस्टॉल के समय वाले मॉड्यूल को हटाया जा सकने वाला बनाएं

इंस्टॉल के समय डिलीवरी के लिए, ऐसे फ़ीचर मॉड्यूल बनाना मददगार हो सकता है जिन्हें ज़रूरत न होने पर, बाद में अनइंस्टॉल करने का विकल्प होता है. उदाहरण के लिए, ट्रेनिंग या ऑनबोर्डिंग के लिए ज़रूरी कॉन्टेंट में बदलाव किए जा सकते हैं, और इसके बाद Play Core API का इस्तेमाल करके, सुविधा मॉड्यूल को अनइंस्टॉल करें जब उपयोगकर्ता को आपका ऐप्लिकेशन इस्तेमाल करने के लिए सेट अप कर दिया जाता है.

इंस्टॉल के समय वाले मॉड्यूल को डिफ़ॉल्ट रूप से नहीं हटाया जा सकता. किसी मॉड्यूल को 'हटाए जा सकने वाले' के तौर पर मार्क करने और अनइंस्टॉल करने की अनुमति देने के लिए, removable टैग जोड़ें और उसकी वैल्यू को true पर सेट करें:

<dist:module ... >
  <dist:delivery>
      <dist:install-time>
          <dist:removable dist:value="true"/>
      </dist:install-time>
  </dist:delivery>
</dist:module>