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 टैबलेट पर क्रैश हो गए.
  • D8 की मदद से बनाए गए ऐप्लिकेशन, Android 5.0 या 5.1 (एपीआई लेवल 21 या 22) पर काम नहीं कर रहे हैं. इसकी वजह से, डिवाइसों पर ऐप्लिकेशन इंस्टॉल नहीं हो पा रहे हैं और 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."

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

    "RejectedExecutionException: Thread limit exceeded replacing blocked worker"

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

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

3.1.1 (अप्रैल 2018)

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

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

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

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

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

IntelliJ 2017.3.3

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

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

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

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

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

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

डेटा बाइंडिंग में अपडेट

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

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

  • अब ObservableField क्लास के कंस्ट्रक्टर में, Observable ऑब्जेक्ट के साथ-साथ अन्य ऑब्जेक्ट भी इस्तेमाल किए जा सकते हैं.

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

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

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

कंपाइलर और Gradle

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

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

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

  • तेज़ी से डेक्सिंग
  • कम मेमोरी का इस्तेमाल
  • बेहतर कोड जनरेशन (बेहतर रजिस्टर ऐलोकेशन, स्मार्ट स्ट्रिंग टेबल)
  • कोड में आगे बढ़ते समय, डिबग करने का बेहतर अनुभव

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

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

        android.enableD8=true
      

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

इंक्रीमेंटल डिज़गरिंग

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

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

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

        android.enableIncrementalDesugaring=false
      

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

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

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

एक साथ कई अपडेट और इंडेक्स करने की प्रोसेस

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

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 रिपॉज़िटरी को शामिल करना ज़रूरी है. Maven का डेटा स्टोर करने की जगह, Android Studio 3.0 और उसके बाद के वर्शन में बनाए गए प्रोजेक्ट के लिए पहले से ही शामिल होती है.

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

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

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

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

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

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

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

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

सलाह: Control + F (Mac पर Command + F) दबाकर भी खोज फ़ील्ड खोला जा सकता है.

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

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

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

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

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

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

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

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

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

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

लेआउट एडिटर

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

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

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

ऐप्लिकेशन चलाना और इंस्टैंट रन

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

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

एम्युलेटर

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

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

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

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

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

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

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

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

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

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

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

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

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