Android Studio 3.3 (जनवरी 2019)
Android Studio 3.3 एक मुख्य रिलीज़ है. इसमें कई नई सुविधाएं और सुधार शामिल हैं.
3.3.2 (मार्च 2019)
इस छोटे अपडेट में, कई गड़बड़ियां ठीक की गई हैं और परफ़ॉर्मेंस को बेहतर बनाया गया है. गड़बड़ियों को ठीक करने से जुड़ी अहम जानकारी देखने के लिए, रिलीज़ से जुड़े अपडेट वाले ब्लॉग पर जाएं.
3.3.1 (फ़रवरी 2019)
इस छोटे अपडेट में, कई गड़बड़ियां ठीक की गई हैं और परफ़ॉर्मेंस को बेहतर बनाया गया है.
IntelliJ IDEA 2018.2.2
Android Studio के मुख्य IDE को अपडेट किया गया है. इसमें 2018.2.2 रिलीज़ के ज़रिए, IntelliJ IDEA के सुधारों को शामिल किया गया है.
Android Gradle प्लग इन से जुड़े अपडेट
Android Gradle प्लग-इन में जो नई सुविधाएं जोड़ी गई हैं उनके बारे में जानने के लिए, इसके रिलीज़ नोट देखें.
नेविगेशन एडिटर
नेविगेशन एडिटर की मदद से, नेविगेशन आर्किटेक्चर कॉम्पोनेंट का इस्तेमाल करके, अपने ऐप्लिकेशन में नेविगेशन को तेज़ी से विज़ुअलाइज़ और बनाया जा सकता है.
ज़्यादा जानकारी के लिए, नेविगेशन आर्किटेक्चर कॉम्पोनेंट की मदद से नेविगेशन लागू करना लेख पढ़ें.
इस्तेमाल नहीं की जा रही Android Studio डायरेक्ट्री मिटाना
Android Studio के किसी मुख्य वर्शन को पहली बार चलाने पर, यह उन डायरेक्ट्री को खोजता है जिनमें Android Studio के उन वर्शन के लिए कैश मेमोरी, सेटिंग, इंडेक्स, और लॉग मौजूद होते हैं जिनका इंस्टॉलेशन नहीं मिल पाया है. इसके बाद, इस्तेमाल न की गई Android Studio डायरेक्ट्री मिटाएं डायलॉग बॉक्स में, इस्तेमाल न की गई डायरेक्ट्री की जगहें, साइज़, और आखिरी बार बदले जाने का समय दिखता है. साथ ही, उन्हें मिटाने का विकल्प भी दिखता है.
Android Studio, यहां दी गई डायरेक्ट्री को मिटा देता है:
- Linux:
~/.AndroidStudio[Preview]X.Y
- Mac:
~/Library/{Preferences, Caches, Logs, Application Support}/AndroidStudio[Preview]X.Y
- Windows:
%USER%.AndroidStudio[Preview]X.Y
Lint में किए गए सुधार
Gradle से लिंट करने पर, यह प्रोसेस काफ़ी तेज़ हो जाती है. बड़े प्रोजेक्ट में, लिंट की प्रोसेस चार गुना तेज़ हो सकती है.
नया प्रोजेक्ट बनाने वाला विज़र्ड
नया प्रोजेक्ट बनाएं विज़र्ड का नया लुक है. इसमें ऐसे अपडेट शामिल हैं जिनसे Android Studio में नए प्रोजेक्ट बनाने की प्रोसेस को आसान बनाया जा सकता है.
ज़्यादा जानकारी के लिए, प्रोजेक्ट बनाना लेख पढ़ें.
प्रोफ़ाइलर से जुड़े अपडेट
Android Studio 3.3 में, अलग-अलग प्रोफ़ाइलर के लिए अपडेट शामिल हैं.
बेहतर परफ़ॉर्मेंस
उपयोगकर्ताओं के सुझावों के आधार पर, प्रोफ़ाइलर का इस्तेमाल करते समय रेंडरिंग की परफ़ॉर्मेंस को बेहतर बनाया गया है. कृपया सुझाव/राय दें या शिकायत करें. ऐसा तब भी करें, जब आपको परफ़ॉर्मेंस से जुड़ी समस्याएं दिखती रहें.
प्रोफ़ाइलर के मेमोरी ऐलोकेशन को ट्रैक करने के विकल्प
प्रोफ़ाइलिंग के दौरान ऐप्लिकेशन की परफ़ॉर्मेंस को बेहतर बनाने के लिए, मेमोरी प्रोफ़ाइलर अब डिफ़ॉल्ट रूप से समय-समय पर मेमोरी के ऐलोकेशन का सैंपल लेता है. अगर आप चाहें, तो इस व्यवहार को बदला जा सकता है. इसके लिए, Android 8.0 (एपीआई लेवल 26) या इसके बाद के वर्शन वाले डिवाइसों पर जांच करते समय, ऐलोकेशन ट्रैकिंग ड्रॉपडाउन का इस्तेमाल करें.
अलोकेशन ट्रैकिंग ड्रॉपडाउन का इस्तेमाल करके, इनमें से कोई एक मोड चुना जा सकता है:
-
पूरी जानकारी: यह ऑब्जेक्ट के लिए मेमोरी के सभी ऐलोकेशन कैप्चर करता है. ध्यान दें कि अगर आपके पास ऐसा ऐप्लिकेशन है जो बहुत सारे ऑब्जेक्ट को ऐलोकेट करता है, तो आपको प्रोफ़ाइलिंग के दौरान परफ़ॉर्मेंस से जुड़ी गंभीर समस्याएं दिख सकती हैं.
-
सैंपल किया गया: यह ऑब्जेक्ट मेमोरी के ऐलोकेशन का समय-समय पर सैंपल कैप्चर करता है. यह डिफ़ॉल्ट व्यवहार है और प्रोफ़ाइलिंग के दौरान, ऐप्लिकेशन की परफ़ॉर्मेंस पर इसका कम असर पड़ता है. आपको ऐसे ऐप्लिकेशन की परफ़ॉर्मेंस से जुड़ी कुछ समस्याएं आ सकती हैं जो कम समय में बहुत सारे ऑब्जेक्ट को ऐलोकेट करते हैं.
-
बंद है: इससे मेमोरी का ऐलोकेशन बंद हो जाता है. अगर यह विकल्प पहले से चुना नहीं गया है, तो सीपीयू रिकॉर्डिंग के दौरान यह मोड अपने-आप चालू हो जाता है. रिकॉर्डिंग खत्म होने के बाद, यह पिछली सेटिंग पर वापस आ जाता है. सीपीयू रिकॉर्डिंग कॉन्फ़िगरेशन डायलॉग में जाकर, इस व्यवहार को बदला जा सकता है.
ट्रैकिंग का असर, Java ऑब्जेक्ट और JNI रेफ़रंस, दोनों पर पड़ता है.
फ़्रेम रेंडरिंग डेटा की जांच करना
सीपीयू प्रोफ़ाइलर में, अब यह जांच की जा सकती है कि मुख्य यूज़र इंटरफ़ेस (यूआई) थ्रेड और रेंडरथ्रेड पर, आपके Java ऐप्लिकेशन को हर फ़्रेम को रेंडर करने में कितना समय लगता है. यह डेटा, उन समस्याओं की जांच करने में मददगार हो सकता है जिनकी वजह से यूज़र इंटरफ़ेस (यूआई) में रुकावट आती है और फ़्रेम रेट कम हो जाता है. उदाहरण के लिए, फ़्रेमरेट को स्मूद बनाए रखने के लिए ज़रूरी 16 मि॰से॰ से ज़्यादा समय लेने वाले हर फ़्रेम को लाल रंग में दिखाया जाता है.
फ़्रेम रेंडरिंग डेटा देखने के लिए, ट्रेस रिकॉर्ड करें. इसके लिए, ऐसे कॉन्फ़िगरेशन का इस्तेमाल करें जिससे सिस्टम कॉल को ट्रैक किया जा सके. ट्रेस रिकॉर्ड करने के बाद, फ़्रेम सेक्शन में जाकर, रिकॉर्डिंग की टाइमलाइन पर हर फ़्रेम के बारे में जानकारी देखें. यह सेक्शन, नीचे दिखाए गए तरीके से दिखता है.
फ़्रेम रेट से जुड़ी समस्याओं की जांच करने और उन्हें ठीक करने के बारे में ज़्यादा जानने के लिए, धीमी रेंडरिंग लेख पढ़ें.
इवेंट टाइमलाइन में फ़्रैगमेंट
इवेंट टाइमलाइन में अब यह दिखता है कि फ़्रैगमेंट कब अटैच और डिटैच किए गए. इसके अलावा, किसी फ़्रैगमेंट पर कर्सर घुमाने पर, आपको एक टूलटिप दिखता है. इसमें, फ़्रैगमेंट का स्टेटस दिखता है.
नेटवर्क प्रोफ़ाइलर में, कनेक्शन पेलोड के लिए फ़ॉर्मैट किया गया टेक्स्ट देखना
पहले, नेटवर्क प्रोफ़ाइलर सिर्फ़ कनेक्शन के पेलोड से रॉ टेक्स्ट दिखाता था. Android Studio 3.3 अब कुछ खास तरह के टेक्स्ट को डिफ़ॉल्ट रूप से फ़ॉर्मैट करता है. इसमें JSON, एक्सएमएल, और एचटीएमएल शामिल हैं. जवाब और अनुरोध टैब में, फ़ॉर्मैट किया गया टेक्स्ट देखने के लिए, पार्स किया गया टेक्स्ट देखें लिंक पर क्लिक करें. साथ ही, रॉ टेक्स्ट देखने के लिए, सोर्स देखें लिंक पर क्लिक करें.
ज़्यादा जानकारी के लिए, नेटवर्क प्रोफ़ाइलर की मदद से नेटवर्क ट्रैफ़िक की जांच करना देखें.
SDK टूल के कॉम्पोनेंट अपने-आप डाउनलोड होना
जब आपके प्रोजेक्ट को SDK टूल के प्लैटफ़ॉर्म, NDK या CMake से SDK टूल का कोई कॉम्पोनेंट चाहिए, तो Gradle अब ज़रूरी पैकेज को अपने-आप डाउनलोड करने की कोशिश करता है. ऐसा तब तक होता है, जब तक आपने पहले SDK Manager का इस्तेमाल करके, लाइसेंस से जुड़े किसी भी समझौते को स्वीकार नहीं कर लिया है.
ज़्यादा जानकारी के लिए, Gradle की मदद से, मौजूद नहीं होने वाले पैकेज अपने-आप डाउनलोड होने की सुविधा देखें.
Clang-Tidy के लिए सहायता
Android Studio में अब स्टैटिक कोड का विश्लेषण करने की सुविधा शामिल है. इसके लिए, Clang-Tidy का इस्तेमाल किया जाता है. यह सुविधा, उन प्रोजेक्ट के लिए उपलब्ध है जिनमें नेटिव कोड शामिल है. Clang-Tidy के साथ काम करने की सुविधा चालू करने के लिए, अपने NDK टूल को r18 या इसके बाद के वर्शन पर अपडेट करें.
इसके बाद, सेटिंग या प्राथमिकताएं डायलॉग खोलकर, जांच की सुविधा को चालू या फिर से चालू किया जा सकता है. इसके लिए, एडिटर > जांच > C/C++ > सामान्य > Clang-Tidy पर जाएं. सेटिंग या प्राथमिकताएं डायलॉग में इस जांच को चुनने पर, सबसे दाएं पैनल के विकल्प सेक्शन में, Clang-Tidy की जांच की सूची भी देखी जा सकती है. यह सूची, चालू और बंद की गई जांचों की होती है. अतिरिक्त जांच चालू करने के लिए, उन्हें सूची में जोड़ें और लागू करें पर क्लिक करें.
अन्य विकल्पों के साथ Clang-Tidy को कॉन्फ़िगर करने के लिए, Clang-Tidy की जांच के विकल्पों को कॉन्फ़िगर करें पर क्लिक करें और खुलने वाले डायलॉग में उन्हें जोड़ें.
C++ को पसंद के मुताबिक बनाने के विकल्प हटाना
C++ सहायता को पसंद के मुताबिक बनाएं डायलॉग से ये विकल्प हटा दिए गए हैं:
- अपवादों के लिए सहायता (-fexceptions)
- रनटाइम टाइप की जानकारी देने वाली सुविधा (-ftti)
Android Studio की मदद से बनाए गए सभी प्रोजेक्ट के लिए, ये सुविधाएं चालू होती हैं.
CMake वर्शन 3.10.2
SDK Manager में अब CMake का 3.10.2 वर्शन शामिल है. ध्यान दें कि Gradle अब भी डिफ़ॉल्ट रूप से 3.6.0 वर्शन का इस्तेमाल करता है.
Gradle के इस्तेमाल के लिए CMake का कोई वर्शन तय करने के लिए, अपने मॉड्यूल की
build.gradle
फ़ाइल में यह जानकारी जोड़ें:
android {
...
externalNativeBuild {
cmake {
...
version "3.10.2"
}
}
}
build.gradle
में CMake को कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, Gradle को मैन्युअल तरीके से कॉन्फ़िगर करना लेख पढ़ें.
CMake के कम से कम वर्शन तय करने के लिए, नया “+” सिंटैक्स
अपने मुख्य मॉड्यूल की build.gradle
फ़ाइल में CMake का वर्शन बताते समय, अब CMake के cmake_minimum_required()
कमांड के व्यवहार से मैच करने के लिए, “+” जोड़ा जा सकता है.
चेतावनी: अन्य बिल्ड डिपेंडेंसी के साथ "+" सिंटैक्स का इस्तेमाल करने का सुझाव नहीं दिया जाता. ऐसा इसलिए, क्योंकि डाइनैमिक डिपेंडेंसी की वजह से वर्शन में अचानक अपडेट हो सकते हैं और वर्शन के बीच के अंतर को हल करने में समस्या आ सकती है.
Android ऐप्लिकेशन बंडल अब इंस्टैंट ऐप्लिकेशन के साथ काम करते हैं
Android Studio की मदद से, अब Android ऐप्लिकेशन बंडल बनाए जा सकते हैं. साथ ही, Google Play Instant के लिए पूरी तरह से सहायता भी मिलती है. दूसरे शब्दों में, अब एक ही Android Studio प्रोजेक्ट से, इंस्टॉल किए गए ऐप्लिकेशन और झटपट इस्तेमाल की सुविधा, दोनों को बनाया और डिप्लॉय किया जा सकता है. साथ ही, उन्हें एक ही Android ऐप्लिकेशन बंडल में शामिल किया जा सकता है.
अगर नया प्रोजेक्ट बनाएं डायलॉग का इस्तेमाल करके, Android Studio में नया प्रोजेक्ट बनाया जा रहा है, तो पक्का करें कि आपने अपना प्रोजेक्ट कॉन्फ़िगर करें > यह प्रोजेक्ट इंस्टैंट ऐप्लिकेशन के साथ काम करेगा के बगल में मौजूद बॉक्स को चुन लिया हो. इसके बाद, Android Studio एक नया ऐप्लिकेशन प्रोजेक्ट बनाता है, जैसे कि वह आम तौर पर करता है. हालांकि, आपके ऐप्लिकेशन के बेस मॉड्यूल में इंस्टैंट ऐप्लिकेशन की सुविधा जोड़ने के लिए, वह आपके मेनिफ़ेस्ट में ये प्रॉपर्टी शामिल करता है:
<manifest ... xmlns:dist="http://schemas.android.com/apk/distribution">
<dist:module dist:instant="true" />
...
</manifest>
इसके बाद, मेन्यू बार में जाकर फ़ाइल > नया > नया मॉडल चुनें. इसके बाद, नया मॉडल बनाएं डायलॉग में जाकर, इंस्टैंट डाइनैमिक फ़ीचर मॉडल चुनें. ध्यान रखें कि यह मॉड्यूल बनाने से, आपके ऐप्लिकेशन का बेस मॉड्यूल भी तुरंत चालू हो जाता है.
अपने ऐप्लिकेशन को किसी स्थानीय डिवाइस पर, इंस्टैंट ऐप्लिकेशन के तौर पर डिप्लॉय करने के लिए, अपने ऐप्लिकेशन के रन कॉन्फ़िगरेशन में बदलाव करें. इसके बाद, सामान्य > इंस्टैंट ऐप्लिकेशन के तौर पर डिप्लॉय करें के बगल में मौजूद बॉक्स को चुनें.
एक वैरिएंट वाला प्रोजेक्ट सिंक करना
Android Studio को यह समझने में मदद मिलती है कि आपका प्रोजेक्ट कैसे बना है, इसके लिए अपने प्रोजेक्ट को बाइल्ड कॉन्फ़िगरेशन के साथ सिंक करना एक अहम चरण है. हालांकि, बड़े प्रोजेक्ट के लिए इस प्रोसेस में काफ़ी समय लग सकता है. अगर आपके प्रोजेक्ट में एक से ज़्यादा बिल्ड वैरिएंट का इस्तेमाल किया जाता है, तो अब प्रोजेक्ट सिंक को ऑप्टिमाइज़ किया जा सकता है. इसके लिए, सिंक को सिर्फ़ उस वैरिएंट तक सीमित करें जिसे आपने फ़िलहाल चुना है.
इस ऑप्टिमाइज़ेशन को चालू करने के लिए, आपको Android Studio 3.3 या इसके बाद के वर्शन के साथ Android Gradle प्लग इन 3.3.0 या इसके बाद के वर्शन का इस्तेमाल करना होगा. इन ज़रूरी शर्तों को पूरा करने पर, IDE आपके प्रोजेक्ट को सिंक करते समय, आपको इस ऑप्टिमाइज़ेशन को चालू करने के लिए कहता है. ऑप्टिमाइज़ेशन की सुविधा, नए प्रोजेक्ट में भी डिफ़ॉल्ट रूप से चालू रहती है.
इस ऑप्टिमाइज़ेशन को मैन्युअल तरीके से चालू करने के लिए, फ़ाइल > सेटिंग > एक्सपेरिमेंटल > Gradle पर क्लिक करें (Mac पर Android Studio > प्राथमिकताएं > एक्सपेरिमेंटल > Gradle). इसके बाद, सिर्फ़ चालू वैरिएंट सिंक करें चेकबॉक्स को चुनें.
ध्यान दें: फ़िलहाल, यह ऑप्टिमाइज़ेशन सिर्फ़ उन प्रोजेक्ट के साथ काम करता है जिनमें सिर्फ़ Java प्रोग्रामिंग लैंग्वेज का इस्तेमाल किया गया हो. उदाहरण के लिए, अगर IDE आपके प्रोजेक्ट में Kotlin या C++ कोड का पता लगाता है, तो यह ऑप्टिमाइज़ेशन अपने-आप चालू नहीं होता. साथ ही, आपको इसे मैन्युअल तरीके से चालू नहीं करना चाहिए.
ज़्यादा जानकारी के लिए, सिंगल-वैरिएंट प्रोजेक्ट सिंक करने की सुविधा चालू करना लेख पढ़ें.
तुरंत सुझाव, शिकायत या राय देना
अगर आपने Android Studio को बेहतर बनाने के लिए, इस्तेमाल के आंकड़े शेयर करने का विकल्प चुना है, तो आपको IDE विंडो के सबसे नीचे मौजूद स्टेटस बार में ये दो नए आइकॉन दिखेंगे:


बस उस आइकॉन पर क्लिक करें जो आईडीई के साथ आपके मौजूदा अनुभव को सबसे सही तरीके से दिखाता हो. ऐसा करने पर, IDE, इस्तेमाल से जुड़े आंकड़े भेजता है. इन आंकड़ों की मदद से, Android Studio की टीम आपके सेंटीमेंट को बेहतर तरीके से समझ पाती है. कुछ मामलों में, जैसे कि आईडीई के साथ खराब अनुभव के बारे में बताने पर, आपके पास ज़्यादा सुझाव/राय देने का विकल्प होगा.
अगर आपने अब तक ऐसा नहीं किया है, तो इस्तेमाल के आंकड़े शेयर करने की सुविधा चालू की जा सकती है. इसके लिए, Mac पर सेटिंग डायलॉग प्राथमिकताएं खोलें. इसके बाद, दिखने का तरीका और व्यवहार > सिस्टम सेटिंग > डेटा शेयर करना पर जाएं और Google को इस्तेमाल के आंकड़े भेजें को चुनें.