अपना ऐप्लिकेशन बनाएं और चलाएं

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

इस खास जानकारी में, Android Studio का इस्तेमाल करके ऐप्लिकेशन बनाने और उसे टेस्ट करने और डीबग करने के लिए चलाने का तरीका बताया गया है. Android Studio का इस्तेमाल करके, ऐप्लिकेशन को इस तरह से बनाने का तरीका जानें कि उसे लोगों के लिए रिलीज़ किया जा सके. इसके लिए, लोगों के लिए रिलीज़ करने के लिए अपना ऐप्लिकेशन बनाएं लेख पढ़ें. Android Studio के साथ या उसके बिना, अपने बिल्ड को मैनेज करने और पसंद के मुताबिक बनाने के बारे में ज़्यादा जानकारी के लिए, अपना बिल्ड कॉन्फ़िगर करना लेख पढ़ें.

बुनियादी तरीके से बनाना और चलाना

अपना ऐप्लिकेशन बनाने और चलाने के लिए, यह तरीका अपनाएं:

  1. टूलबार में, 'रन कॉन्फ़िगरेशन' मेन्यू से अपना ऐप्लिकेशन चुनें.
  2. टारगेट किए गए डिवाइस के मेन्यू में, वह डिवाइस चुनें जिस पर आपको अपना ऐप्लिकेशन चलाना है.

    टारगेट किए गए डिवाइस का मेन्यू.

    अगर आपने कोई डिवाइस कॉन्फ़िगर नहीं किया है, तो Android एमुलेटर का इस्तेमाल करने के लिए, आपको Android वर्चुअल डिवाइस बनाना होगा या कोई फ़िज़िकल डिवाइस कनेक्ट करना होगा.

  3. चालू करें पर क्लिक करें.

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

बिल्ड प्रोसेस को मॉनिटर करना

बिल्ड प्रोसेस की जानकारी देखने के लिए, व्यू > टूल विंडो > बिल्ड चुनें या टूल विंडो बार में बिल्ड पर क्लिक करें. बिल्ड टूल विंडो में, आपके ऐप्लिकेशन को बनाने के लिए Gradle के टास्क दिखते हैं. इन्हें पहली इमेज में दिखाया गया है.

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

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

अगर बिल्ड प्रोसेस के दौरान कोई गड़बड़ी होती है, तो Gradle आपको समस्या हल करने के लिए, कमांड-लाइन के विकल्पों का सुझाव दे सकता है. जैसे, --stacktrace या --debug. अपनी बिल्ड प्रोसेस के साथ कमांड-लाइन विकल्पों का इस्तेमाल करने के लिए:

  1. सेटिंग या प्राथमिकताएं डायलॉग खोलें:
    • Windows या Linux पर, मेन्यू बार में जाकर फ़ाइल > सेटिंग चुनें.
    • macOS पर, मेन्यू बार में जाकर Android Studio > प्राथमिकताएं को चुनें.
  2. बिल्ड, एक्सीक्यूशन, डिप्लॉयमेंट > कंपाइलर पर जाएं.
  3. कमांड-लाइन के विकल्प के बगल में मौजूद टेक्स्ट फ़ील्ड में, कमांड-लाइन के विकल्प डालें.
  4. सेव करके बाहर निकलने के लिए, ठीक है पर क्लिक करें.

अगली बार जब आपका ऐप्लिकेशन बनाया जाएगा, तब Gradle इन कमांड-लाइन विकल्पों को लागू करेगा.

ऐप्लिकेशन बनाने और चलाने की ऐडवांस सुविधाएं

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

  • अपने ऐप्लिकेशन को डीबग मोड में डिप्लॉय करने के लिए, डीबग करें पर क्लिक करें. ऐप्लिकेशन को डीबग मोड में चलाने पर, अपने कोड में ब्रेकपॉइंट सेट किए जा सकते हैं. साथ ही, रन-टाइम के दौरान वैरिएबल की जांच की जा सकती है और एक्सप्रेशन का आकलन किया जा सकता है. इसके अलावा, डीबगिंग टूल भी चलाए जा सकते हैं. ज़्यादा जानने के लिए, अपने ऐप्लिकेशन को डीबग करना लेख पढ़ें.

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

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

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

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

  • हमारा सुझाव है कि ऐप्लिकेशन डेवलप करने के लिए, Android Studio का इस्तेमाल करें. हालांकि, कमांड लाइन से भी अपने ऐप्लिकेशन को वर्चुअल या फ़िज़िकल डिवाइस पर डिप्लॉय किया जा सकता है. ज़्यादा जानकारी के लिए, कमांडलाइन से अपना ऐप्लिकेशन बनाना लेख पढ़ें.

'बदलाव लागू करें' सुविधा की मदद से, धीरे-धीरे डिप्लॉय करना

Android Studio 3.5 और इसके बाद के वर्शन में, 'बदलाव लागू करें' सुविधा की मदद से, ऐप्लिकेशन को रीस्टार्ट किए बिना, चल रहे ऐप्लिकेशन में कोड और संसाधन में बदलाव किए जा सकते हैं. साथ ही, कुछ मामलों में, मौजूदा गतिविधि को रीस्टार्ट किए बिना भी ऐसा किया जा सकता है. इस सुविधा की मदद से, यह कंट्रोल किया जा सकता है कि डिवाइस की मौजूदा स्थिति को बनाए रखते हुए, छोटे और धीरे-धीरे किए जाने वाले बदलावों को डिप्लॉय और टेस्ट करने के लिए, आपके ऐप्लिकेशन का कितना हिस्सा रीस्टार्ट किया जाए.

'बदलाव लागू करें' सुविधा, Android JVMTI के लागू होने की सुविधाओं का इस्तेमाल करती है. ये सुविधाएं, Android 8.0 (एपीआई लेवल 26) या इसके बाद के वर्शन वाले डिवाइसों पर काम करती हैं. बदलाव लागू करने की सुविधा के काम करने के तरीके के बारे में ज़्यादा जानने के लिए, Android Studio प्रोजेक्ट Marble: बदलाव लागू करना लेख पढ़ें.

ज़रूरी शर्तें

'बदलाव लागू करें' कार्रवाइयां सिर्फ़ तब उपलब्ध होती हैं, जब ये शर्तें पूरी होती हैं:

  • डीबग बिल्ड वैरिएंट का इस्तेमाल करके, अपने ऐप्लिकेशन का APK बनाएं.
  • आपने अपने ऐप्लिकेशन को टारगेट डिवाइस या ऐसे एमुलेटर पर डिप्लॉय किया हो जो Android 8.0 (एपीआई लेवल 26) या उसके बाद के वर्शन पर काम करता हो.

'बदलाव लागू करें' सुविधा का इस्तेमाल करना

अगर आपको बदलावों को किसी ऐसे डिवाइस पर डिप्लॉय करना है जो इन बदलावों के साथ काम करता है, तो इन विकल्पों का इस्तेमाल करें:

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

यह कार्रवाई करने के लिए, Control+Alt+F10 (macOS पर Control+Command+Shift+R) दबाएं.

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

Control+F10 (MacOS पर Control+Command+R) दबाकर भी यह कार्रवाई की जा सकती है.

चालू करें : सभी बदलावों को डिप्लॉय करता है और ऐप्लिकेशन को फिर से शुरू करता है. इस विकल्प का इस्तेमाल तब करें, जब आपके किए गए बदलावों को'बदलाव लागू करें' के किसी भी विकल्प का इस्तेमाल करके लागू नहीं किया जा सकता. ऐप्लिकेशन को फिर से शुरू करने की ज़रूरत वाले बदलावों के बारे में ज़्यादा जानने के लिए, बदलाव लागू करने की सीमाएं सेक्शन देखें.

'बदलाव लागू करें' के लिए, रन फ़ॉलबैक की सुविधा चालू करना

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

अगर आपको हर बार ऐसा होने पर सूचना नहीं चाहिए, तो Android Studio को कॉन्फ़िगर किया जा सकता है, ताकि बदलाव लागू न होने पर आपका ऐप्लिकेशन अपने-आप फिर से चलने लगे. इस सुविधा को चालू करने के लिए, यह तरीका अपनाएं:

  1. सेटिंग या प्राथमिकताएं डायलॉग खोलें:

    • Windows या Linux पर, मेन्यू से फ़ाइल > सेटिंग चुनें.
    • macOS पर, मेन्यू से Android Studio > प्राथमिकताएं चुनें.
  2. बिल्ड, एक्सीक्यूशन, डिप्लॉयमेंट > डिप्लॉयमेंट पर जाएं.

  3. बदलाव लागू करने वाले किसी एक या दोनों ऐक्शन के लिए, अपने-आप फ़ॉलबैक चलाने की सुविधा चालू करने के लिए, चेकबॉक्स चुनें.

  4. ठीक है पर क्लिक करें.

प्लैटफ़ॉर्म के हिसाब से बदलाव

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

'बदलाव लागू करें' सुविधा की सीमाएं

'बदलाव लागू करें' सुविधा को ऐप्लिकेशन डिप्लॉय करने की प्रोसेस को तेज़ करने के लिए डिज़ाइन किया गया है. हालांकि, इसका इस्तेमाल कब किया जा सकता है, इस पर कुछ सीमाएं हैं.

कोड में ऐसे बदलाव जिनके लिए ऐप्लिकेशन को रीस्टार्ट करना ज़रूरी है

कोड और संसाधन में किए गए कुछ बदलाव तब तक लागू नहीं किए जा सकते, जब तक ऐप्लिकेशन को रीस्टार्ट नहीं किया जाता. इनमें ये बदलाव शामिल हैं:

  • कोई फ़ील्ड जोड़ना या हटाना
  • पेमेंट का तरीका हटाना
  • तरीके के हस्ताक्षर बदलना
  • तरीकों या क्लास के मॉडिफ़ायर बदलना
  • क्लास इनहेरिटेंस बदलना
  • एनम में वैल्यू बदलना
  • संसाधन जोड़ना या हटाना
  • ऐप्लिकेशन मेनिफ़ेस्ट में बदलाव करना
  • नेटिव लाइब्रेरी (SO फ़ाइलें) बदलना
लाइब्रेरी और प्लग इन

कुछ लाइब्रेरी और प्लग इन, आपके ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइलों या मेनिफ़ेस्ट में रेफ़र किए गए संसाधनों में अपने-आप बदलाव करते हैं. अपने-आप होने वाले ये अपडेट, 'बदलाव लागू करें' सुविधा के काम करने में इन तरीकों से रुकावट डाल सकते हैं:

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

इन सीमाओं से बचने के लिए, अपने डीबग बिल्ड के वैरिएंट के लिए, अपने-आप होने वाले सभी अपडेट बंद करें.

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

ऐसा कोड जो इंस्टॉल किए गए APK में मौजूद कॉन्टेंट का सीधे तौर पर रेफ़रंस देता हो

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

अगर बदलाव लागू करने के दौरान आपको कोई और समस्या आती है, तो बग की शिकायत करें.

लाइव एडिट

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

लाइव एडिट के बारे में ज़्यादा जानें

बिल्ड का वैरिएंट बदलना

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

Android Studio में इस्तेमाल होने वाले बिल्ड वैरिएंट को बदलने के लिए, इनमें से कोई एक तरीका अपनाएं:

  • मेन्यू में, बिल्ड > बिल्ड वैरिएंट चुनें को चुनें.
  • मेन्यू में, व्यू > टूल विंडो > बाइन्ड किए गए वैरिएंट चुनें.
  • टूल विंडो बार में, वैरिएंट बनाएं टैब पर क्लिक करें.

बिना नेटिव/C++ कोड वाले प्रोजेक्ट के लिए, बिल्ड वैरिएंट पैनल में दो कॉलम होते हैं: मॉड्यूल और सक्रिय बिल्ड वैरिएंट. मॉड्यूल के लिए चालू बिल्ड वैरिएंट की वैल्यू से यह तय होता है कि IDE, कनेक्ट किए गए डिवाइस पर कौनसा बिल्ड वैरिएंट डिप्लॉय करता है. यह वैल्यू, एडिटर में दिखती है.

नौवीं इमेज. बर्स्ट वैरिएंट पैनल में, उन प्रोजेक्ट के लिए दो कॉलम होते हैं जिनमें नेटिव/C++ कोड नहीं होता.

वैरिएंट के बीच स्विच करने के लिए, किसी मॉड्यूल के लिए चालू बिल्ड वैरिएंट सेल पर क्लिक करें और सूची से अपनी पसंद का वैरिएंट चुनें.

नेटिव/C++ कोड वाले प्रोजेक्ट के लिए, वैरिएंट बनाएं पैनल में तीन कॉलम होते हैं:

  • मॉड्यूल
  • ऐक्टिव बिल्ड वैरिएंट
  • ऐक्टिव एबीआई

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

10वीं इमेज. बिल्ड वैरिएंट पैनल, नेटिव/C++ कोड वाले प्रोजेक्ट के लिए चालू एबीआई कॉलम जोड़ता है.

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

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

Android Studio में वैरिएंट बनाने के लिए डायलॉग बॉक्स में दिखने वाले विरोध

Android Studio के बिल्ड वैरिएंट डायलॉग में, आपको गड़बड़ी के मैसेज दिख सकते हैं. इनसे, बिल्ड वैरिएंट के बीच होने वाले संघर्ष के बारे में पता चलता है. जैसे:

वैरिएंट की गड़बड़ियों की जानकारी देने वाली विंडो

इस गड़बड़ी से यह पता नहीं चलता कि Gradle में बिल्ड करने से जुड़ी कोई समस्या है. इससे पता चलता है कि Android Studio IDE, चुने गए मॉड्यूल के वैरिएंट के बीच के सिंबल को हल नहीं कर सकता.

उदाहरण के लिए, अगर आपके पास मॉड्यूल M1 है, जो मॉड्यूल M2 के वैरिएंट v1 पर निर्भर करता है, लेकिन M2 के लिए IDE में वैरिएंट v2 चुना गया है, तो इसका मतलब है कि IDE में ऐसे सिंबल हैं जिनका हल नहीं किया गया है. मान लें कि M1, सिर्फ़ v1 में उपलब्ध क्लास पर निर्भर है. v2 चुनने पर, IDE को उस क्लास के बारे में पता नहीं चलता. इसलिए, यह क्लास के नाम को हल नहीं कर पाता और M1 मॉड्यूल के कोड में गड़बड़ियां दिखाता है.

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

रन/डीबग कॉन्फ़िगरेशन बदलना

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

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

रन/डीबग कॉन्फ़िगरेशन में बदलाव करने के लिए, रन करें > कॉन्फ़िगरेशन में बदलाव करें को चुनें. ज़्यादा जानकारी के लिए, रन/डीबग कॉन्फ़िगरेशन बनाएं और उनमें बदलाव करें लेख पढ़ें.