Android Studio 3.1 (मार्च 2018)

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

3.1.4 (अगस्त 2018)

Android Studio 3.1 के इस अपडेट में, ये बदलाव किए गए हैं और गड़बड़ियां ठीक की गई हैं:

  • बंडल किया गया Kotlin अब 1.2.50 वर्शन है.
  • नए प्रोजेक्ट, kotlin-stdlib-jre* आर्टफ़ैक्ट के बजाय kotlin-stdlib-jdk* artifacts की मदद से बनाए जाते हैं. kotlin-stdlib-jre* आर्टफ़ैक्ट अब काम नहीं करते.
  • ProGuard के नियमों को R8 पार्स करने की प्रोसेस को बेहतर बनाया गया है.
  • इन गड़बड़ियों को ठीक कर दिया गया है:
    • Kotlin की मुख्य क्लास को चलाने की कोशिश करने पर, यह गड़बड़ी हुई: "Error: Could not find or load main class..."
    • कुछ ऑप्टिमाइज़ेशन करते समय, R8 एक इनफ़िनिट लूप में चला गया.
    • रन विंडो में फिर से जांच करें कमांड का इस्तेमाल करने पर, कभी-कभी "कोई टेस्ट नहीं मिला" मैसेज गलत तरीके से दिखता था.
    • D8, invoke-virtual इंस्टेंस को सही तरीके से हैंडल नहीं करता था. इस वजह से, VerifyError के साथ क्रैश हो जाता था: invoke-super/virtual can't be used on private method
    • डेटा बाइंडिंग कंपाइलर, com.android.tools:annotations के पुराने वर्शन पर निर्भर था. अगर बेस प्रोजेक्ट में टूल एनोटेशन उपलब्ध हैं, तो कंपाइलर अब उनका इस्तेमाल करता है.
    • प्रोफ़ाइलर का इस्तेमाल करते समय, फ़्रैगमेंट ट्रांज़िशन के दौरान Android Studio क्रैश हो गया.
    • टेक्स्ट बॉक्स वाले लेआउट को डीबग करते समय, डीबगर क्रैश हो गया.
    • D8, खास वर्णों वाली कुछ ZIP फ़ाइलों को नहीं पढ़ सका.

3.1.3 (जून 2018)

Android Studio 3.1 के इस अपडेट में, इन गड़बड़ियों को ठीक किया गया है:

  • मेमोरी लीक होने की वजह से, Layout Editor का इस्तेमाल करने के बाद Android Studio धीरे-धीरे काम करने लगा और कुछ समय बाद काम करना बंद कर दिया. इस अपडेट में, इनमें से ज़्यादातर समस्याओं को ठीक किया गया है. हम जल्द ही एक और अपडेट रिलीज़ करने वाले हैं, ताकि मेमोरी लीक की अन्य समस्याओं को ठीक किया जा सके.
  • D8 की मदद से बनाए गए कुछ ऐप्लिकेशन, Verizon Ellipsis टैबलेट पर क्रैश हो गए.
  • Android 5.0 या 5.1 (एपीआई लेवल 21 या 22) पर चलने वाले डिवाइसों पर, D8 का इस्तेमाल करके बनाए गए ऐप्लिकेशन इंस्टॉल नहीं हो सके. ऐसा INSTALL_FAILED_DEXOPT गड़बड़ी की वजह से हुआ.
  • OkHttp लाइब्रेरी का इस्तेमाल करने वाले कुछ ऐप्लिकेशन, D8 की मदद से बनाए गए थे. ये ऐप्लिकेशन, Android 4.4 (एपीआई लेवल 19) पर काम करने वाले डिवाइसों पर क्रैश हो गए.
  • कभी-कभी Android Studio शुरू नहीं हो पाता था. ऐसा com.intellij.psi.jsp.JspElementType के लिए क्लास शुरू करते समय ProcessCanceledException की वजह से होता था.

3.1.2 (अप्रैल 2018)

Android Studio 3.1 के इस अपडेट में, इन गड़बड़ियों को ठीक किया गया है:

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

    "The SourceSet name is not recognized by the Android Gradle Plugin."

  • इंस्टेंट रन की सुविधा चालू होने पर, Run कमांड ट्रिगर होने पर, नए Kotlin प्रोजेक्ट के बिल्ड नहीं बन पाते थे.
  • build.gradle फ़ाइल में बदलाव करते समय, कभी-कभी कोई वर्ण टाइप करने और उसके स्क्रीन पर दिखने के बीच काफ़ी समय लग जाता था.
  • ज़्यादा मॉड्यूल या बाहरी डिपेंडेंसी वाले कुछ प्रोजेक्ट में, डेक्सिंग के दौरान बिल्ड फ़ेल हो गए. साथ ही, यह गड़बड़ी का मैसेज मिला:

    "RejectedExecutionException: Thread limit exceeded replacing blocked worker"

  • D8 की मुख्य DEX सूची की कंप्यूटिंग में, कुछ रिफ़्लेक्टिव इनवोकेशन को ध्यान में नहीं रखा जा रहा था.

इस अपडेट में ऐसे बदलाव भी शामिल हैं जिनकी वजह से, कुछ मामलों में Gradle से लिंट चेक बहुत तेज़ी से किए जा सकते हैं.

3.1.1 (अप्रैल 2018)

Android Studio 3.1 के इस अपडेट में, इन गड़बड़ियों को ठीक किया गया है:

  • कुछ मामलों में, Android Studio 3.0 में बनाए गए प्रोजेक्ट को पहली बार Android Studio 3.1 में खोलने पर, Gradle-aware Make टास्क को रन/डीबग कॉन्फ़िगरेशन में लॉन्च से पहले वाले सेक्शन से हटा दिया गया था. इस वजह से, Run या Debug बटन पर क्लिक करने पर प्रोजेक्ट नहीं बन पाए. इससे कई तरह की समस्याएं हुईं. जैसे, गलत APK डिप्लॉय होना और इंस्टेंट रन का इस्तेमाल करते समय क्रैश होना.

    इस समस्या को हल करने के लिए, Android Studio 3.1.1, उन प्रोजेक्ट के लिए रन कॉन्फ़िगरेशन में Gradle-aware Make टास्क जोड़ता है जिनमें यह एंट्री मौजूद नहीं है. यह बदलाव, प्रोजेक्ट लोड होने पर पहली बार Gradle सिंक होने के बाद होता है.

  • अगर ऐडवांस प्रोफ़ाइलिंग चालू थी, तो टेक्स्ट बॉक्स वाले लेआउट को डीबग करते समय डीबगर क्रैश हो गया.
  • Build Variants पर क्लिक करने के बाद, Android Studio काम नहीं कर रहा है.
  • AAR (Android archive) फ़ाइलों को दो बार निकाला गया था. एक बार Gradle सिंक प्रोसेस के दौरान और दूसरी बार Gradle बिल्ड प्रोसेस के दौरान.
  • एसवीजी फ़ाइलों से इंपोर्ट किए गए कुछ वेक्टर ड्रॉएबल में एलिमेंट मौजूद नहीं थे.
  • compile डिपेंडेंसी कॉन्फ़िगरेशन के बंद होने के बारे में दी गई चेतावनी को अपडेट कर दिया गया है. इसमें implementation और api कॉन्फ़िगरेशन के बारे में बेहतर दिशा-निर्देश दिए गए हैं. compile कॉन्फ़िगरेशन का इस्तेमाल बंद करके माइग्रेट करने के बारे में ज़्यादा जानने के लिए, डिपेंडेंसी के नए कॉन्फ़िगरेशन से जुड़े दस्तावेज़ देखें.

कोडिंग/आईडीई

IntelliJ 2017.3.3

Android Studio के मुख्य आईडीई को IntelliJ IDEA से मिले सुधारों के साथ अपडेट किया गया है. यह अपडेट, 2017.3.3 रिलीज़ के ज़रिए किया गया है. इन सुधारों में, कलेक्शन और स्ट्रिंग के लिए बेहतर कंट्रोल फ़्लो विश्लेषण, बेहतर नल वैल्यू का अनुमान, नए क्विक फ़िक्स, और बहुत कुछ शामिल है.

ज़्यादा जानकारी के लिए, IntelliJ IDEA के 2017.2 और 2017.3 वर्शन के लिए JetBrains की रिलीज़ से जुड़ी जानकारी देखें. साथ ही, बग ठीक करने से जुड़े अपडेट के लिए JetBrains की रिलीज़ से जुड़ी जानकारी देखें.

Room की मदद से SQL में बदलाव करने की सुविधा को बेहतर बनाया गया है

Room डेटाबेस लाइब्रेरी का इस्तेमाल करने पर, SQL में बदलाव करने से जुड़ी कई सुविधाओं का फ़ायदा लिया जा सकता है:

  • Query में कोड अपने-आप पूरा होने की सुविधा उपलब्ध है. यह सुविधा, SQL टेबल (इकाइयों), कॉलम, क्वेरी पैरामीटर, एलियास, जॉइन, सबक्वेरी, और WITH क्लॉज़ को समझती है.
  • एसक्यूएल सिंटैक्स को हाइलाइट करने की सुविधा अब काम करती है.
  • SQL में किसी टेबल के नाम पर राइट क्लिक करके, उसका नाम बदला जा सकता है. इससे, उससे जुड़ा Java या Kotlin कोड भी फिर से लिखा जाता है. जैसे, क्वेरी का रिटर्न टाइप. नाम बदलने की प्रोसेस, दूसरी दिशा में भी काम करती है. इसलिए, किसी Java क्लास या फ़ील्ड का नाम बदलने पर, उससे जुड़ा एसक्यूएल कोड फिर से लिखा जाता है.
  • इस्तेमाल किए गए उदाहरण ढूंढें सुविधा का इस्तेमाल करने पर, SQL के इस्तेमाल के उदाहरण दिखते हैं. इसके लिए, राइट क्लिक करें और कॉन्टेक्स्ट मेन्यू से इस्तेमाल किए गए उदाहरण ढूंढें चुनें.
  • Java या Kotlin कोड में किसी एसक्यूएल इकाई के एलान पर जाने के लिए, इकाई पर क्लिक करते समय Control (Mac पर Command) बटन को दबाकर रखें.

Room के साथ एसक्यूएल का इस्तेमाल करने के बारे में जानकारी पाने के लिए, Room का इस्तेमाल करके, डेटा को किसी स्थानीय डेटाबेस में सेव करना लेख पढ़ें.

डेटा बाइंडिंग से जुड़े अपडेट

इस अपडेट में, डेटा बाइंडिंग से जुड़े कई सुधार किए गए हैं:

  • अब डेटा बाइंडिंग एक्सप्रेशन में, LiveData ऑब्जेक्ट का इस्तेमाल, ऑब्ज़र्वेबल फ़ील्ड के तौर पर किया जा सकता है. ViewDataBinding क्लास में अब एक नया setLifecycle() तरीका शामिल है. इसका इस्तेमाल LiveData ऑब्जेक्ट को मॉनिटर करने के लिए किया जाता है.

  • अब ObservableField क्लास, अपने कंस्ट्रक्टर में अन्य Observable ऑब्जेक्ट स्वीकार कर सकती है.

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

    नए कंपाइलर के ये फ़ायदे हैं:

    • ViewBinding क्लास, Java कंपाइलर से पहले Android Plugin for Gradle से जनरेट की जाती हैं.
    • ऐप्लिकेशन को कंपाइल करने पर, लाइब्रेरी अपनी जनरेट की गई बाइंडिंग क्लास को सेव रखती हैं. ऐसा हर बार जनरेट करने के बजाय किया जाता है. इससे मल्टी-मॉड्यूल प्रोजेक्ट की परफ़ॉर्मेंस को काफ़ी हद तक बेहतर बनाया जा सकता है.

कंपाइलर और Gradle

D8, डिफ़ॉल्ट DEX कंपाइलर है

अब DEX बाइटकोड जनरेट करने के लिए, D8 कंपाइलर का इस्तेमाल डिफ़ॉल्ट रूप से किया जाता है.

इस नए DEX कंपाइलर के कई फ़ायदे हैं. इनमें ये भी शामिल हैं:

  • Dexing की प्रोसेस को तेज़ी से पूरा करना
  • मेमोरी का इस्तेमाल कम करना
  • कोड जनरेट करने की सुविधा को बेहतर बनाया गया है. जैसे, रजिस्टर को बेहतर तरीके से असाइन करना, स्ट्रिंग टेबल को ज़्यादा स्मार्ट बनाना
  • कोड की जांच करते समय, डिबग करने का बेहतर अनुभव

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

अगर आपने gradle.properties में android.enableD8 को false पर सेट किया है, तो उस फ़्लैग को मिटा दें या उसे true पर सेट करें:

        android.enableD8=true
      

ज़्यादा जानकारी के लिए, नया DEX कंपाइलर देखें.

इंक्रीमेंटल डीसुगरिंग

Java 8 की भाषा से जुड़ी सुविधाओं का इस्तेमाल करने वाले प्रोजेक्ट के लिए, इंक्रीमेंटल डिसुगरिंग की सुविधा डिफ़ॉल्ट रूप से चालू होती है. इससे बिल्ड के समय को बेहतर बनाया जा सकता है.

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

अपने प्रोजेक्ट की gradle.properties फ़ाइल में यह जानकारी देकर, इंक्रीमेंटल डिसुगरिंग की सुविधा बंद की जा सकती है:

        android.enableIncrementalDesugaring=false
      

आसान आउटपुट विंडो

Gradle Console को Build विंडो से बदल दिया गया है. इसमें Sync और Build टैब होते हैं.

बिल्ड विंडो के नए और आसान वर्शन को इस्तेमाल करने के तरीके के बारे में जानने के लिए, बिल्ड प्रोसेस को मॉनिटर करना लेख पढ़ें.

बैच अपडेट और इंडेक्सिंग की कॉन्करेंसी

Gradle सिंक और आईडीई इंडेक्सिंग की प्रोसेस को अब ज़्यादा बेहतर बनाया गया है. इससे, इंडेक्सिंग की कई गैर-ज़रूरी कार्रवाइयों में लगने वाला समय कम हो गया है.

C++ और LLDB

हमने C++ डेवलपमेंट के कोडिंग, सिंक करने, बनाने, और डीबग करने के चरणों में, क्वालिटी और परफ़ॉर्मेंस से जुड़े कई सुधार किए हैं. इन सुधारों में ये शामिल हैं:

  • अगर आपको बड़े C++ प्रोजेक्ट पर काम करना है, तो आपको सिंबल बनाने में लगने वाले समय में काफ़ी कमी दिखेगी. बड़े प्रोजेक्ट के लिए, सिंक होने में लगने वाला समय भी काफ़ी कम हो जाता है.

  • कैश किए गए नतीजों का ज़्यादा से ज़्यादा बार इस्तेमाल करके, CMake के साथ सिंक करने और उसे बनाने की परफ़ॉर्मेंस को बेहतर बनाया गया है.

  • ज़्यादा C++ डेटा स्ट्रक्चर के लिए फ़ॉर्मेटर ("प्रीटी प्रिंटर") जोड़ने से, LLDB आउटपुट को आसानी से पढ़ा जा सकता है.

  • LLDB अब सिर्फ़ Android 4.1 (एपीआई लेवल 16) और इसके बाद के वर्शन पर काम करता है.

ध्यान दें: Android Studio 3.0 या इसके बाद के वर्शन के साथ नेटिव डीबगिंग की सुविधा, 32-बिट Windows पर काम नहीं करती. अगर 32-बिट Windows का इस्तेमाल किया जा रहा है और आपको नेटिव कोड को डीबग करना है, तो Android Studio 2.3 का इस्तेमाल करें.

Kotlin

Kotlin को 1.2.30 वर्शन पर अपग्रेड किया गया

Android Studio 3.1 में Kotlin 1.2.30 शामिल है.

Kotlin कोड का विश्लेषण अब कमांड-लाइन लिंट चेक की मदद से किया जाता है

कमांड लाइन से लिंट चलाने पर, अब आपकी Kotlin क्लास का विश्लेषण किया जाता है.

आपको जिस प्रोजेक्ट पर लिंट चलाना है उसके लिए, टॉप-लेवल की build.gradle फ़ाइल में Google की Maven रिपॉज़िटरी शामिल होनी चाहिए. Android Studio 3.0 और इसके बाद के वर्शन में बनाए गए प्रोजेक्ट के लिए, Maven रिपॉज़िटरी पहले से ही शामिल होती है.

परफ़ॉर्मेंस टूल

सीपीयू प्रोफ़ाइलर की मदद से, नेटिव C++ प्रोसेस के सैंपल लेना

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

रिकॉर्डिंग कॉन्फ़िगरेशन बनाकर, सैंपलिंग इंटरवल जैसी डिफ़ॉल्ट सेटिंग बदली जा सकती हैं.

Java थ्रेड को फिर से ट्रेस करने के लिए, सैंपल किया गया (Java) या इंस्ट्रुमेंट किया गया (Java) कॉन्फ़िगरेशन में से कोई एक चुनें.

सीपीयू ट्रेस, मेमोरी एलॉकेशन के नतीजे, और हीप डंप फ़िल्टर करना

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

खोजने के लिए, पैन के सबसे ऊपर दाएं कोने में मौजूद, फ़िल्टर करें पर क्लिक करें. इसके बाद, अपनी क्वेरी टाइप करें और Enter दबाएं.

अहम जानकारी: खोज फ़ील्ड को खोलने के लिए, Control + F (Mac पर Command + F) दबाएं.

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

तरीके, क्लास या पैकेज के नाम के हिसाब से फ़िल्टर करने के बारे में ज़्यादा जानने के लिए, तरीके के ट्रेस रिकॉर्ड करना और उनकी जांच करना लेख पढ़ें.

नेटवर्क प्रोफ़ाइलर में अनुरोध टैब

नेटवर्क प्रोफ़ाइलर में अब अनुरोध टैब शामिल है. इसमें चुनी गई टाइमलाइन के दौरान नेटवर्क अनुरोधों के बारे में जानकारी मिलती है. पिछले वर्शन में, Network Profiler सिर्फ़ नेटवर्क रिस्पॉन्स के बारे में जानकारी देता था.

नेटवर्क प्रोफ़ाइलर में थ्रेड व्यू

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

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

लेआउट इंस्पेक्टर

लेआउट इंस्पेक्टर में नई सुविधाएं जोड़ी गई हैं. इनमें कुछ ऐसी सुविधाएं भी शामिल हैं जो पहले बंद किए जा चुके Hierarchy Viewer और Pixel Perfect टूल में उपलब्ध थीं:

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

लेआउट एडिटर

लेआउट एडिटर में मौजूद पैलेट में कई सुधार किए गए हैं:

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

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

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

रन और इंस्टैंट रन

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

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

एम्युलेटर

Android Studio 3.0 के बाद से, Android Emulator में क्या नया है और क्या बदलाव हुए हैं, इस बारे में जानने के लिए, वर्शन 27.0.2 से लेकर वर्शन 27.1.12 तक के Android Emulator के रिलीज़ नोट देखें.

इनमें ये मुख्य सुधार शामिल हैं:

  • एम्युलेटर की स्थिति को सेव करने और उसे तेज़ी से शुरू करने के लिए, क्विक बूट स्नैपशॉट की सुविधा. साथ ही, कस्टम स्टार्ट स्टेट को सेव करने के लिए, अभी सेव करें कमांड का इस्तेमाल करने की सुविधा.
  • विंडोलेस एम्युलेटर स्क्रीन.
  • Android 8.0 (एपीआई लेवल 26), Android 8.1 (एपीआई लेवल 27), और Android P Developer Preview के लिए सिस्टम इमेज.

यूज़र इंटरफ़ेस और उपयोगकर्ता अनुभव में सुधार

ज़्यादा टूलटिप, कीबोर्ड शॉर्टकट, और काम के मैसेज

हमने Android Studio में कई जगहों पर टूलटिप और मददगार मैसेज ओवरले जोड़े हैं.

कई कमांड के लिए कीबोर्ड शॉर्टकट देखने के लिए, माउस पॉइंटर को किसी बटन पर तब तक घुमाएं, जब तक टूलटिप न दिख जाए.

टूल > Android मेन्यू हटाया गया

टूल > Android मेन्यू हटा दिया गया है. इस मेन्यू में मौजूद कमांड को दूसरी जगह ले जाया गया है.

  • कई कमांड को सीधे टूल मेन्यू में ले जाया गया है.
  • Sync project with gradle files कमांड को File मेन्यू में ले जाया गया है.
  • डिवाइस मॉनिटर करें कमांड को हटा दिया गया है. इसके बारे में यहां बताया गया है.

डिवाइस मॉनिटर, कमांड लाइन से उपलब्ध है

Android Studio 3.1 में, डिवाइस मॉनिटर की भूमिका पहले की तुलना में कम हो गई है. कई मामलों में, डिवाइस मॉनिटर की मदद से उपलब्ध कराई जाने वाली सुविधा अब नए और बेहतर टूल के ज़रिए उपलब्ध कराई जाती है.

कमांड लाइन से डिवाइस मॉनिटर को चालू करने के निर्देशों और डिवाइस मॉनिटर के ज़रिए उपलब्ध टूल की जानकारी के लिए, डिवाइस मॉनिटर का दस्तावेज़ देखें.