Android Studio 4.2 (अप्रैल 2021)

Android Studio 4.2 एक मुख्य रिलीज़ है. इसमें कई नई सुविधाएं और सुधार शामिल हैं.

4.2.2 (जून 2021)

इस छोटे अपडेट में कई गड़बड़ियां ठीक की गई हैं. बग ठीक करने से जुड़ी अहम जानकारी देखने के लिए, रिलीज़ अपडेट ब्लॉग पर मौजूद उससे जुड़ी पोस्ट पढ़ें.

4.2.1 (मई 2021)

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

'Android Gradle प्लग इन 4.2.0'

Android Gradle प्लग इन के नए वर्शन में कई अपडेट शामिल हैं. ज़्यादा जानने के लिए, Android Gradle प्लग-इन की रिलीज़ के बारे में पूरी जानकारी पढ़ें.

Gradle के साथ काम करने की सुविधा और कॉन्फ़िगरेशन में बदलाव

Android Studio में इस्तेमाल करते समय, Gradle बिल्ड टूल, Studio के बंडल किए गए JDK का इस्तेमाल करता है. पिछली रिलीज़ में, JDK 8 को Studio के साथ बंडल किया गया था. हालांकि, 4.2 में, अब JDK 11 को बंडल किया गया है. चलाने के लिए नए बंडल किए गए JDK का इस्तेमाल करते समय Gradle, तो इसकी वजह से जेवीएम की परफ़ॉर्मेंस पर असर पड़ सकता है या साथ काम नहीं कर सकता कचरा इकट्ठा करने वाले टूल में बदलाव किए जाने की वजह से. इन समस्याओं के बारे में इसमें बताया गया है: AGP के रिलीज़ नोट्स.

Gradle सिंक होने के समय को ऑप्टिमाइज़ करने का विकल्प

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

डेटाबेस इंस्पेक्टर

क्वेरी एडिटर में किए गए सुधार

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

डीबी इंस्पेक्टर एडिटर

इसके अलावा, अब हम आपकी पिछली क्वेरी का इतिहास भी उपलब्ध कराते हैं. क्वेरी का इतिहास दिखाएं क्वेरी के इतिहास दिखाने का बटन{: .inline-icon} बटन पर क्लिक करने पर, आपको उन क्वेरी की सूची दिखेगी जिन्हें आपने अभी चुने गए डेटाबेस के लिए पहले चलाया था. पूरी झलक देखने के लिए सूची में से किसी क्वेरी पर क्लिक करें क्वेरी को एडिटर में कॉपी करें और उसे एडिटर में कॉपी करने के लिए, Enter दबाएं. इसके बाद, स्टेटमेंट चलाने के लिए Run पर क्लिक करें.

क्वेरी एडिटर में निर्देश चलाएं

ऑफ़लाइन मोड

Android Studio के पिछले वर्शन में, ऐप्लिकेशन की प्रोसेस से डिसकनेक्ट होने के दौरान का इस्तेमाल करके, निरीक्षक और उसके डेटा को बंद किया गया. हमने Android Studio 4.2 में, प्रोसेस के डिसकनेक्ट होने के बाद भी आपके ऐप्लिकेशन के डेटाबेस की जांच करने की सुविधा जोड़ी है. इससे ऐप्लिकेशन क्रैश होने के बाद, उसे डीबग करना आसान हो जाता है.

डिसकनेक्ट होने पर, डेटाबेस इंस्पेक्टर आपके डेटाबेस डाउनलोड करता है और फिर उन्हें ऑफ़लाइन मोड में उपलब्ध कराता है. ऑफ़लाइन होने पर, इसे खोला जा सकता है टेबल और क्वेरी को रन करता है.

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

AGP के लिए Assistant को अपग्रेड करना

Android के लिए, अपग्रेड असिस्टेंट नाम का नया Gradle प्लग-इन उपलब्ध है. इसकी मदद से, अपने प्रोजेक्ट के लिए AGP वर्शन को अपडेट किया जा सकता है.

Android Gradle प्लग इन अपग्रेड असिस्टेंट डायलॉग

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

अपग्रेड असिस्टेंट की मदद से किए जाने वाले बदलावों की झलक

सिस्टम ट्रेस: मेमोरी और ग्राफ़िक के लिए बेहतर मेट्रिक

सीपीयू प्रोफ़ाइलर में, सिस्टम ट्रेस इस सुविधा में अब ऐप्लिकेशन की परफ़ॉर्मेंस का विश्लेषण करने के लिए नई मेट्रिक शामिल की गई हैं. निम्न:

  • इवेंट टेबल. यह सूची सभी के लिए है फ़िलहाल चुने गए थ्रेड में ट्रेस इवेंट.

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

    सिस्टम ट्रेस बफ़र की सूची

  • सीपीयू फ़्रीक्वेंसी. सीपीयू के कोर सेक्शन में, यह नया ट्रैक हर कोर के हिसाब से सीपीयू फ़्रीक्वेंसी दिखाता है. इससे पता चलता है कि हर कोर कितनी मेहनत से काम कर रहा है.

    सिस्टम ट्रेस करने वाले टूल की सीपीयू फ़्रीक्वेंसी

  • प्रोसेस मेमोरी (आरएसएस). इस नई विंडो में, यह दिखता है कि फ़िलहाल ऐप्लिकेशन कितनी फ़िज़िकल मेमोरी का इस्तेमाल कर रहा है.

    सिस्टम ट्रेस करने की प्रोसेस की मेमोरी (आरएसएस)

ज़्यादा जानकारी के लिए, सीपीयू प्रोफ़ाइलर की मदद से सीपीयू गतिविधि की जांच करना लेख पढ़ें.

नया लेआउट इंस्पेक्टर रीफ़्रेश करने की कार्रवाई

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

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

Safe Args के लिए सहायता

Safe Args एक Gradle प्लग इन है. यह टाइप से सुरक्षित नेविगेशन और जुड़े आर्ग्युमेंट के ऐक्सेस के लिए, आसान ऑब्जेक्ट और बिल्डर क्लास जनरेट करता है. Android पर सेफ़ के साथ काम करते समय, Studio में अब बेहतर सहायता भी मिलेगी Args, जैसा कि नीचे बताया गया है:

  • निर्देशों, आर्ग्युमेंट, और अलग-अलग बिल्डर क्लास के लिए ऑटोकंप्लीट की सुविधा
  • Java और Kotlin के सेफ़ आर्ग प्लगिन के साथ काम करता है
  • सोर्स से एक्सएमएल तक नेविगेट करना

R8 रीट्रैस अब कमांड-लाइन टूल में उपलब्ध है

कमांड-लाइन टूल के 4.0 वर्शन में उपलब्ध है, R8 retrace एक स्टैंडअलोन टूल है. इसकी मदद से, उलझाने वाले टूल से ओरिजनल स्टैक ट्रेस हासिल किया जा सकता है स्टैक ट्रेस के तौर पर भी सेट किया जा सकता है.

SDK टूल के मैनेजर का इस्तेमाल करके, यह पैकेज डाउनलोड किया जा सकता है. इससे, android_sdk/cmdline-tools में R8 रिट्रेस. इसके अलावा, आपके पास ये विकल्प हैं स्टैंडअलोन कमांड-लाइन टूल पैकेज डाउनलोड करें.

इस्तेमाल से जुड़ी जानकारी के लिए, उपयोगकर्ता गाइड में R8 रीट्रैस देखें.

कई डिवाइसों पर डिप्लॉय करें

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

  1. टारगेट किए गए डिवाइस के ड्रॉपडाउन मेन्यू में, एक से ज़्यादा डिवाइस चुनें चुनें. यह मेन्यू, IDE के सबसे ऊपर बीच में होता है.

    टारगेट डिवाइस का ड्रॉपडाउन

  2. टारगेट किए गए डिवाइस चुनें और ठीक है पर क्लिक करें.

    डिवाइस सेट डायलॉग में बदलाव करना

  3. अपना ऐप्लिकेशन चलाएं.

फ़ीचर मॉड्यूल के लिए नई removable सेटिंग

'Android Gradle प्लग इन 4.2', bundletool 1.0.0 का इस्तेमाल करता है, जिससे व्यवहार की जानकारी मिलती है फ़ीचर मॉड्यूल का इस्तेमाल करने वाले ऐप्लिकेशन के लिए बदलाव: इस तौर पर बताया गया कोई भी फ़ीचर मॉड्यूल अगर dist:install-time को साफ़ तौर पर dist:removable के तौर पर मार्क नहीं किया गया है, तो वीडियो, डिफ़ॉल्ट रूप से नहीं हटाए जा सकेंगे. यह नई सेटिंग, इंस्टॉल के समय काम करने वाले मॉड्यूल को बेस मॉड्यूल के साथ फ़्यूज़ करने को ऑप्टिमाइज़ करती है. इससे कुछ ऐप्लिकेशन की परफ़ॉर्मेंस बेहतर हो सकती है.

फ़ीचर मॉड्यूल को अनइंस्टॉल करने के लिए, उन सभी मॉड्यूल पर dist:removable="true" सेट करें जिन्हें आपको अनइंस्टॉल करना है.

इस नई सेटिंग के बारे में ज़्यादा जानकारी के लिए, दस्तावेज़ में इसके लिए dist:removable टैग है सुविधा मॉड्यूल मेनिफ़ेस्ट.

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

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

कोड में अन्य बदलाव करने के लिए सहायता

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

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

अपडेट किया गया नया प्रोजेक्ट और नया मॉड्यूल विज़र्ड

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

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

Kotlin 1.4.31

Android Studio 4.2 में Kotlin 1.4.31 बंडल किया गया है. चेक आउट करने का समय Kotlin 1.4.0 में बदलाव का लॉग की समीक्षा करें.

ANDROID_SDK_HOME एनवायरमेंट वैरिएबल अब काम नहीं करता

ANDROID_SDK_HOME एनवायरमेंट वैरिएबल का इस्तेमाल बंद कर दिया गया है और इसे ANDROID_PREFS_ROOT से बदल दिया गया है. ज़्यादा जानकारी के लिए, एम्युलेटर एनवायरमेंट वैरिएबल देखें.

Android Studio 4.2 से जुड़ी समस्याएं

इस सेक्शन में, Android Studio 4.2 में आने वाली आम समस्याओं के बारे में बताया गया है. पूरी सूची के लिए, पहचानी गई समस्याएं पेज पर जाएं.

Android Studio 4.2.0, Kotlin के गलत वर्शन वाले प्रोजेक्ट जनरेट करता है: "1.5.0-release-764"

अगर Android Studio 4.2.0 का इस्तेमाल किया जा रहा है और Kotlin प्लग इन 1.5.0 पर अपग्रेड किया गया है, तो Studio से बनाए गए नए Kotlin प्रोजेक्ट, Gradle सिंक करने से जुड़ी इस गड़बड़ी की वजह से बिल्ड नहीं हो पाएंगे:

Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764.

वैकल्पिक हल के तौर पर, 1.5.0-release-764 को 1.5.0 से बदलें प्रोजेक्ट की build.gradle फ़ाइलों में.

की और कीस्टोर के लिए अलग-अलग पासवर्ड इस्तेमाल करते समय गड़बड़ी हुई

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

बिल्ड > साइन किया गया बंडल / APK जनरेट करें पर जाने और किसी ऐप्लिकेशन बंडल या APK के लिए ऐप्लिकेशन साइनिंग को कॉन्फ़िगर करने पर, कुंजी और पासकोड के लिए अलग-अलग पासवर्ड डालने पर, यह गड़बड़ी दिख सकती है:

Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores

इस समस्या को हल करने के लिए, पासकोड को पासकोड और पासकोड के लिए एक ही रखें.

Android Studio 4.2 इंस्टॉल करने के बाद, वह शुरू नहीं होता

Studio पिछले आइटम को इंपोर्ट करने की कोशिश करता है .vmoptions पर टैप करें और उन्हें कूड़ा इकट्ठा करने वाले उस डिवाइस के साथ काम करें जिसका इस्तेमाल किया जा रहा है जेडीके 11. अगर यह प्रोसेस पूरी नहीं होती है, तो हो सकता है कि .vmoptions फ़ाइल में कस्टम वर्चुअल मशीन (वीएम) के विकल्प सेट करने वाले कुछ उपयोगकर्ताओं के लिए, IDE शुरू न हो.

इस समस्या को हल करने के लिए, हमारा सुझाव है कि आप अपनी पसंद के हिसाब से बनाए गए विकल्पों में टिप्पणी करें .vmoptions में (# वर्ण का इस्तेमाल करके). .vmoptions फ़ाइल के लिए यह ज़रूरी है कि निम्न स्थानों में पाए जाते हैं:

Windows

C:\Users\YourUserName\AppData\<var>[Local|Roaming]</var>\Google\AndroidStudio4.2\studio64.exe.vmoptions

macOS

~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions

Linux

~/.config/Google/AndroidStudio4.2/studio64.vmoptions

अगर इस तरीके को आज़माने के बाद भी Studio नहीं खुलता है, तो यहां अपग्रेड करने के बाद Studio नहीं खुलता लेख पढ़ें.