Android Studio 2.0 (अप्रैल 2016)
ध्यान दें: अगर आपको N Developer Preview के लिए ऐप्लिकेशन बनाना है, तो आपको Android Studio 2.1 Preview का इस्तेमाल करना चाहिए. Android Studio 2.0 में, N Preview को टारगेट करने के लिए ज़रूरी सभी सुविधाएं काम नहीं करती हैं.
इंस्टैंट रन:
- Android Studio अब पहले से ज़्यादा तेज़ी से क्लीन बिल्ड डिप्लॉय करता है. इसके अलावा, अब एम्युलेटर या फ़िज़िकल डिवाइस पर इंक्रीमेंटल कोड बदलावों को तुरंत लागू करना शुरू कर दिया जाता है. नए डीबग बिल्ड को फिर से डिप्लॉय किए बिना या ज़्यादातर मामलों में, ऐप्लिकेशन को रीस्टार्ट किए बिना अपने अपडेट की समीक्षा करें.
<li>Instant Run supports pushing the following changes to a running app:
<ul>
<li>Changes to the implementation of an existing instance method or
static method
</li>
<li>Changes to an existing app resource
</li>
<li>Changes to structural code, such as a method signature or a static
field (requires a target device running API level 21 or higher).
</li>
</ul>
</li>
<li>Read the documentation to learn more <a href=
"/tools/building/building-studio.html#instant-run">about Instant
Run</a>.
<p class="note">
<strong>Note:</strong> Instant Run is supported only when you deploy the
debug build variant, use <a href=
"/tools/revisions/gradle-plugin.html#revisions">Android plugin for
Gradle version 2.0.0</a> or higher, and configure your app's module-level
<code>build.gradle</code> file for <code>minSdkVersion 15</code> or higher.
For the best performance, configure your app for <code>minSdkVersion
21</code> or higher.
</p>
</li>
लिंट में नई सुविधाएं जोड़ी गई हैं:
- यह पक्का करने के लिए कि सभी कॉन्सटेंट हैंडल किए गए हैं,
@IntDef
एनोटेट किए गए पूर्णांकों का इस्तेमाल करके,switch
स्टेटमेंट की जांच करें. जो स्टेटमेंट मौजूद नहीं हैं उन्हें तुरंत जोड़ने के लिए, इंटेंट ऐक्शन ड्रॉप-डाउन मेन्यू का इस्तेमाल करें और मौजूद न होने वाले @IntDef कॉन्स्टेंट जोड़ें को चुनें. build.gradle
फ़ाइल में वर्शन नंबर डालने के लिए, स्ट्रिंग इंटरपोलेशन का इस्तेमाल करने की गलत कोशिशों के लिए फ़्लैग.Fragment
क्लास को एक्सटेंड करने वाली, गुमनाम क्लास के लिए फ़्लैग.- असुरक्षित जगहों पर मौजूद नेटिव कोड के लिए फ़्लैग, जैसे कि
res/
औरasset/
फ़ोल्डर. इस फ़्लैग की मदद से, नेटिव कोड कोlibs/
फ़ोल्डर में सेव किया जा सकता है. इसके बाद, इंस्टॉल के समय इसे ऐप्लिकेशन केdata/app-lib/
फ़ोल्डर में सुरक्षित तरीके से पैकेज किया जाता है. AOSP: #169950 Runtime.load()
औरSystem.load()
कॉल के लिए, असुरक्षित कॉल के फ़्लैग. एओएसपी: #179980- मेन्यू बार से Refactor > Remove
Unused Resources चुनकर, इस्तेमाल न किए गए संसाधनों को ढूंढें और हटाएं. अब, इस्तेमाल न किए गए संसाधन का पता लगाने की सुविधा, सिर्फ़ उन संसाधनों के साथ काम करती है जिनका रेफ़रंस, इस्तेमाल न किए गए संसाधनों ने दिया है. साथ ही, यह सुविधा रॉ फ़ाइलों में मौजूद रेफ़रंस के साथ भी काम करती है. जैसे,
.html
इमेज रेफ़रंस और Gradle के संसाधन को छोटा करने वाले टूल के ज़रिए इस्तेमाल किए गएtools:keep
औरtools:discard
एट्रिब्यूट. हालांकि, यह सुविधा इनऐक्टिव सोर्स सेट (जैसे, दूसरे बिल्ड फ़्लेवर में इस्तेमाल किए गए संसाधन) को ध्यान में रखती है और स्टैटिक फ़ील्ड इंपोर्ट को सही तरीके से मैनेज करती है. - यह जांच करती है कि इंप्लिसिट एपीआई रेफ़रंस,
minSdkVersion
के टारगेट किए गए सभी प्लैटफ़ॉर्म पर काम करते हैं या नहीं. RecyclerView
औरParcelable
के गलत इस्तेमाल की शिकायत करता है.@IntDef
,@IntRange
, और@Size
की जांच अबint
ऐरे और वैरग के लिए भी की जाती है.
अतिरिक्त सुधार:
- Android Emulator 2.0 के लिए ऑप्टिमाइज़ किया गया है, जो पहले से ज़्यादा तेज़ है. साथ ही, यह वर्शन कई तरह के वर्चुअल डिवाइसों के साथ काम करता है. इसमें यूज़र इंटरफ़ेस (यूआई) को काफ़ी बेहतर बनाया गया है. नए एमुलेटर के बारे में ज़्यादा जानने के लिए, SDK टूल के रिलीज़ नोट पढ़ें.
<li>Improvements to the <a href=
"/tools/devices/managing-avds.html">Android Virtual Device
Manager</a>:
<ul>
<li>System images are now categorized under the following tabs:
<em>Recommended</em>, <em>x86</em>, and <em>Other</em>.
</li>
<li>Under advanced settings, you can enable multi-core support and
specify the number of cores the emulator can use.
</li>
<li>Under advanced settings, you can determine how graphics are rendered
on the emulator by selecting one of the following options:
<ul>
<li>
<strong>Hardware:</strong> use you computer's graphics card for
faster rendering.
</li>
<li>
<strong>Software:</strong> use software-based rendering.
</li>
<li>
<strong>Auto:</strong> let the emulator decide the best option. This
is the default setting.
</li>
</ul>
</li>
</ul>
</li>
<li>Improved AAPT packaging times by specifying deploy target before the app
is built. This allows Android Studio to efficiently package only the
resources required by the specified device.
</li>
<li>Added Cloud Test Lab integration to provide on-demand app testing with
the convenience and scalability of a cloud service. Learn more about how you
can <a href="/training/testing/start/index.html#run-ctl">use Cloud
Test Lab with Android Studio</a>.
</li>
<li>Added a preview of the new <a class="external-link" href=
"//tools.android.com/tech-docs/gpu-profiler">GPU Debugger</a>. For graphics
intensive applications, you can now visually step through your OpenGL ES code
to optimize your app or game.
</li>
<li>Added Google App Indexing Test. Add support for URLs, app
indexing, and search functionality to your apps to help drive more
traffic to your app, discover which app content is used most, and attract
new users. Test and validate URLs in your app all within Android
Studio. See <a href=
"/tools/help/app-link-indexing.html">Supporting URLs and App
Indexing in Android Studio</a>.
</li>
<li>Upgrades from the latest IntelliJ 15 release, including improved code
analysis and performance. See <a class="external-link" href=
"https://www.jetbrains.com/idea/whatsnew">What's New in IntelliJ</a> for a
complete description of the new features and enhancements.
</li>
<li>XML editor auto-complete now adds quotations marks when completing
attributes. To check if this option is enabled, open the <b>Setting</b> or
<b>Preferences</b> dialogue, navigate to <b>Editor > General > Smart
Keys</b>, and check the box next to <b>Add quotes for attribute value on
attribute completion</b>. <a class="external-link" href=
"//b.android.com/195113">Issue: 195113</a>
</li>
<li>The XML editor now supports code completion for <a href=
"/topic/libraries/data-binding/index.html#layout_details">data binding</a>
expressions.
</li>