बार-बार लागू होने वाला कोड डेवलपमेंट

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

लाइव एडिट

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

लाइव एडिट के तीन मोड होते हैं:

  • मैन्युअल: कोड में किए जाने वाले बदलाव तब लागू होते हैं, जब उन्हें Control+' (macOS पर Command+')
  • सेव करने पर मैन्युअल: कोड में किए गए बदलाव तब लागू होते हैं, जब उन्हें Control+S (macOS पर Command+S).
  • अपने-आप: बदलाव आपके डिवाइस या एम्युलेटर में तब लागू होते हैं, जब आप किसी ऐप्लिकेशन को अपडेट करते हैं कंपोज़ेबल फ़ंक्शन का इस्तेमाल करते हैं.

लाइव एडिट में, यूज़र इंटरफ़ेस (यूआई) और UX से जुड़े कोड में बदलाव किए जाते हैं. लाइव एडिट में बदलाव नहीं किया जा सकता में कुछ बदलाव किए जा सकते हैं, जैसे कि हस्ताक्षर का तरीका अपडेट करना, नए तरीके जोड़ना या क्लास क्रम में बदलाव होते हैं. ज़्यादा जानकारी के लिए, लाइव एडिट की सुविधा की सीमाओं की सूची देखें.

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

सबसे सही तरीके का वर्कफ़्लो इस तरह है:

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

लाइव एडिट का इस्तेमाल शुरू करना

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

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

  1. शुरू करने से पहले, पक्का करें कि आपके पास Android Studio जिराफ़ या उसके बाद वाला वर्शन हो इंस्टॉल किया जा सकता है और आपके फ़िज़िकल का एपीआई लेवल डिवाइस या एम्युलेटर कम से कम 30 है.

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

  3. फ़ोन और टैबलेट के लिए, लिखें गतिविधि टेंप्लेट चुनें और इसके बाद, आगे बढ़ें पर क्लिक करें.

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

    Android Studio में डाले गए चौथे चरण से प्रोजेक्ट की सेटिंग का उदाहरण
    दूसरी इमेज. प्रोजेक्ट सेटिंग का उदाहरण.
  5. पूरा करें पर क्लिक करें.

लाइव एडिट की सुविधा चालू करें

  1. लाइव एडिट की सुविधा को चालू करने के लिए सेटिंग पर जाएं.

    • Windows या Linux पर, फ़ाइल > सेटिंग > एडिटर > लाइव एडिट पर जाएं.
    • macOS पर, Android Studio > सेटिंग > एडिटर > लाइव एडिट पर जाएं.
  2. सेटिंग में जाकर, लाइव में बदलाव करें विकल्प चुनें. इसके बाद, वह मोड चुनें जिसे आपको चलाना है.

    मैन्युअल मोड में, कोड में किए गए बदलावों को हर बार तब पुश किया जाता है, जब Control+' (macOS पर Command+') दबाया जाता है. मैन्युअल मोड में चालू है और आपके कोड में किए गए बदलाव हर बार मैन्युअल तरीके से सेव करने पर लागू हो जाते हैं, Control+S का इस्तेमाल करके (Command+S चालू macOS पर Microsoft आपके ऐप्लिकेशन को ऐक्सेस किया जा सकता है. ऑटोमैटिक मोड में, कोड में किए गए बदलाव आपके डिवाइस या एमुलेटर में अपने-आप लागू हो जाते हैं.

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

  4. अपना ऐप्लिकेशन डिप्लॉय करने के लिए, चलाएं यूज़र इंटरफ़ेस (यूआई) बटन पर क्लिक करें.

  5. लाइव बदलाव करने की सुविधा चालू करने के बाद, चल रहे डिवाइस टूल विंडो के सबसे ऊपर दाईं ओर, अप-टू-डेट का हरा सही का निशान दिखता है:

    लाइव एडिट के लिए हरे रंग का सही का निशान वाला यूज़र इंटरफ़ेस (यूआई)

बदलाव करना और उनकी समीक्षा करना

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

उदाहरण के लिए, MainActivity में मौजूद Greeting तरीके में बदलाव करके फ़ॉलो किया जा रहा है:

@Composable
fun Greeting(name: String) {
    Text(
        text = "Hello $name!",
        Modifier
            .padding(80.dp) // Outer padding; outside background
            .background(color = Color.Cyan) // Solid element background color
            .padding(16.dp) // Inner padding; inside background, around text)
    )
}

आपके बदलाव, टेस्ट डिवाइस पर तुरंत दिखने लगते हैं, जैसा कि चौथी इमेज में दिखाया गया है.

डिवाइस पर ग्रीटिंग के तरीके में बदलाव लागू किए गए
चौथी इमेज. डिवाइस पर, लाइव एडिट वर्शन में किए गए बदलावों को दिखाकर Greeting तरीका.

लाइव एडिट की सुविधा से जुड़ी समस्या हल करना

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

लाइव एडिट आइकॉन का पुराना वर्शन
पांचवीं इमेज. लाइव एडिट की सुविधा के स्टेटस का इंंडिकेटर.

लाइव एडिट की सीमाएं

मौजूदा सीमाओं की सूची नीचे दी गई है.

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

  • [सिर्फ़ Android Studio Giraffe और उसके बाद के वर्शन पर लागू होता है] लाइव एडिट करने के लिए, AGP 8.1.0-alpha05 या इसके बाद का वर्शन ज़रूरी है. अगर आपका प्रोजेक्ट, एजीपी के पुराने वर्शन का इस्तेमाल करता है, तो लाइव एडिट की सुविधा बंद हो जाती है.

  • लाइव बदलाव करने के लिए ज़रूरी है कि डिवाइस या एम्युलेटर, एपीआई लेवल पर चल रहा हो 30 या उससे ज़्यादा.

  • लाइव एडिट की सुविधा का इस्तेमाल करके, सिर्फ़ फ़ंक्शन के मुख्य हिस्से में बदलाव किया जा सकता है. इसका मतलब है कि ये काम नहीं किए जा सकते फ़ंक्शन का नाम या हस्ताक्षर बदलना, फ़ंक्शन जोड़ना या हटाना या नॉन-फ़ंक्शन फ़ील्ड का डेटा शामिल करना.

  • लाइव एडिट में, लिखने की सुविधा को पहली बार बदलने पर, ऐप्लिकेशन की स्थिति रीसेट हो जाती है एक फ़ाइल है. यह पहली बार कोड बदलने के बाद ही होता है—ऐप्लिकेशन की स्थिति में आपके द्वारा उस फ़ाइल में 'लिखें' फ़ंक्शन में किए जाने वाले बाद के कोड बदलावों के ज़रिए रीसेट किया जा सकता है.

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

  • आपको उन क्लास पर डीबगर को चलाना होगा जिनमें आपने लाइव बदलाव की सुविधा का इस्तेमाल करके बदलाव किए हैं.

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

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

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

  • ऐप्लिकेशन को रीस्टार्ट करने पर, लाइव एडिट की सुविधा फिर से शुरू नहीं होती. आपको ऐप्लिकेशन को फिर से चलाना होगा.

  • लाइव बदलाव सिर्फ़ डीबग करने लायक प्रोसेस के साथ काम करता है.

  • लाइव एडिट की सुविधा उन प्रोजेक्ट के साथ काम नहीं करती जो बिल्ड कॉन्फ़िगरेशन में kotlinOptions के तहत moduleName के लिए कस्टम वैल्यू का इस्तेमाल करती हैं.

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

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

  • बदलाव लागू करें/कोड में बदलाव लागू करें और चल रहे ऐप्लिकेशन को रीस्टार्ट करना ज़रूरी है.

  • फ़िलहाल, लाइव एडिट की सुविधा Android Automotive प्रोजेक्ट के साथ काम नहीं करती.

लाइव एडिट के बारे में अक्सर पूछे जाने वाले सवाल

  • लाइव एडिट की सुविधा की मौजूदा स्थिति क्या है?

    लाइव एडिट करने की सुविधा, Android Studio Giraffe में उपलब्ध है. इसे चालू करने के लिए, फ़ाइल > सेटिंग > एडिटर > लाइव एडिट पर जाएं. macOS पर, Android Studio > सेटिंग > एडिटर > लाइव एडिट पर जाएं.

  • मुझे लाइव एडिट की सुविधा का इस्तेमाल कब करना चाहिए?

    उपयोगकर्ता अनुभव में अपडेट के असर को तुरंत देखने के लिए, लाइव एडिट का इस्तेमाल करें एलिमेंट (जैसे कि मॉडिफ़ायर अपडेट और ऐनिमेशन) पूरे ऐप्लिकेशन में दिखते हैं अनुभव.

  • मुझे लाइव एडिट का इस्तेमाल कब नहीं करना चाहिए?

    लाइव बदलाव करने की सुविधा, यूज़र इंटरफ़ेस (यूआई) और यूज़र एक्सपीरियंस (यूएक्स) से जुड़े कोड में बदलाव करने पर फ़ोकस करती है. यह ऐसे बदलावों के साथ काम नहीं करता है जैसे कि मेथड हस्ताक्षर अपडेट करना, नए मेथड जोड़ना या क्लास के क्रम में बदलाव करना. ज़्यादा जानकारी के लिए, लाइव स्ट्रीम से जुड़ी सीमाएं देखें बदलाव करें.

  • मुझे झलक लिखने की सुविधा का इस्तेमाल कब करना चाहिए?

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

लिटरल में लाइव बदलाव करना (अब काम नहीं करता)

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

  • Int
  • String
  • Color
  • Dp
  • Boolean

सोर्स कोड में, लिटरल वैल्यू बदलते हुए उपयोगकर्ता का वीडियो और झलक
अपडेट हो रहा है
डाइनैमिक रूप से

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

लिटरल में लाइव बदलाव करने की सुविधा चालू करना

बदलाव लागू करें

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

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

उपयोगकर्ता, "बदलाव लागू करें" बटन पर क्लिक कर रहा है