Android Studio, Android ऐप्लिकेशन डेवलपमेंट के लिए आधिकारिक इंटिग्रेटेड डेवलपमेंट एनवायरमेंट (आईडीई) है. Android Studio, IntelliJ IDEA के बेहतरीन कोड एडिटर और डेवलपर टूल के आधार पर काम करता है. साथ ही, यह Android ऐप्लिकेशन बनाने के दौरान आपकी प्रॉडक्टिविटी बढ़ाने वाली और भी कई सुविधाएं देता है. जैसे:
- Gradle पर आधारित, सुविधाजनक बिल्ड सिस्टम
- तेज़ और ज़्यादा सुविधाओं वाला एम्युलेटर
- एक ऐसा यूनिफ़ाइड एनवायरमेंट जहां सभी Android डिवाइसों के लिए ऐप्लिकेशन डेवलप किए जा सकते हैं
- रीयल टाइम में एमुलेटर और फ़िज़िकल डिवाइसों में कॉम्पोज़ेबल अपडेट करने के लिए, लाइव बदलाव करने की सुविधा
- कोड टेंप्लेट और GitHub इंटिग्रेशन से, ऐप्लिकेशन की सामान्य सुविधाएं बनाने और सैंपल कोड इंपोर्ट करने में मदद मिलती है
- बेहतर टेस्टिंग टूल और फ़्रेमवर्क
- परफ़ॉर्मेंस, उपयोगिता, वर्शन के साथ काम करने, और दूसरी समस्याओं की जानकारी पाने के लिए लिंट टूल
- C++ और NDK के साथ काम करना
- Google Cloud Platform के लिए पहले से मौजूद सहायता, जिससे Google Cloud Messaging और App Engine को आसानी से इंटिग्रेट किया जा सकता है
इस पेज पर, Android Studio की बुनियादी सुविधाओं के बारे में जानकारी दी गई है. नए बदलावों के बारे में खास जानकारी पाने के लिए, Android Studio के रिलीज़ नोट देखें.
प्रोजेक्ट का स्ट्रक्चर
Android Studio में हर प्रोजेक्ट में एक या एक से ज़्यादा मॉड्यूल होते हैं. इनमें सोर्स कोड वाली फ़ाइलें और संसाधन फ़ाइलें होती हैं. मॉड्यूल के टाइप में ये शामिल हैं:
- Android ऐप्लिकेशन के मॉड्यूल
- लाइब्रेरी के मॉड्यूल
- Google App Engine मॉड्यूल
डिफ़ॉल्ट रूप से, Android Studio आपकी प्रोजेक्ट फ़ाइलों को Android प्रोजेक्ट व्यू में दिखाता है, जैसा कि पहले चित्र में दिखाया गया है. यह व्यू, मॉड्यूल के हिसाब से व्यवस्थित किया जाता है, ताकि आपके प्रोजेक्ट की मुख्य सोर्स फ़ाइलों को तुरंत ऐक्सेस किया जा सके. सभी बिल्ड फ़ाइलें, सबसे ऊपर मौजूद Gradle स्क्रिप्ट में दिखती हैं.
हर ऐप्लिकेशन मॉड्यूल में ये फ़ोल्डर होते हैं:
- manifests: इसमें
AndroidManifest.xml
फ़ाइल शामिल होती है. - java: इसमें Kotlin और Java सोर्स कोड फ़ाइलें होती हैं. इनमें JUnit टेस्ट कोड भी शामिल होता है.
- res: इसमें ऐसे सभी संसाधन शामिल होते हैं जो कोड नहीं होते. जैसे, यूज़र इंटरफ़ेस (यूआई) स्ट्रिंग और बिटमैप इमेज.
डिस्क पर Android प्रोजेक्ट की बनावट, इस फ़्लैटन रिप्रज़ेंटेशन से अलग होती है. प्रोजेक्ट का असल फ़ाइल स्ट्रक्चर देखने के लिए, Project मेन्यू में जाकर Android के बजाय Project चुनें.
ज़्यादा जानकारी के लिए, प्रोजेक्ट की खास जानकारी देखें.
Gradle बिल्ड सिस्टम
Android Studio, बिल्ड सिस्टम के आधार के तौर पर Gradle का इस्तेमाल करता है. साथ ही, Android Gradle प्लग इन की मदद से, Android के हिसाब से ज़्यादा सुविधाएं उपलब्ध कराता है. यह बिल्ड सिस्टम, Android Studio के मेन्यू में इंटिग्रेट किए गए टूल के तौर पर और कमांड लाइन से अलग से काम करता है. बिल्ड सिस्टम की सुविधाओं का इस्तेमाल करके, ये काम किए जा सकते हैं:
- बिल्ड प्रोसेस को पसंद के मुताबिक बनाएं, कॉन्फ़िगर करें, और उसे बढ़ाएं.
- एक ही प्रोजेक्ट और मॉड्यूल का इस्तेमाल करके, अपने ऐप्लिकेशन के लिए अलग-अलग सुविधाओं वाले कई APK बनाएं.
- सोर्स सेट में कोड और संसाधनों का फिर से इस्तेमाल करना.
Gradle के फ़ायदों का इस्तेमाल करके, अपने ऐप्लिकेशन की मुख्य सोर्स फ़ाइलों में बदलाव किए बिना, यह सब किया जा सकता है.
Android Studio की बिल्ड फ़ाइलों को build.gradle.kts
नाम दिया जाता है, अगर Kotlin (इसका सुझाव दिया जाता है) का इस्तेमाल किया जाता है. इसके अलावा, Groovy का इस्तेमाल करने पर, उन्हें build.gradle
नाम दिया जाता है. ये प्लैन टेक्स्ट फ़ाइलें होती हैं, जो Android Gradle प्लग इन से मिले एलिमेंट के साथ बिल्ड को कॉन्फ़िगर करने के लिए, Kotlin या Groovy सिंटैक्स का इस्तेमाल करती हैं. हर प्रोजेक्ट में, पूरे प्रोजेक्ट के लिए एक टॉप-लेवल बिल्ड फ़ाइल और हर मॉड्यूल के लिए अलग-अलग मॉड्यूल-लेवल बिल्ड फ़ाइलें होती हैं.
किसी मौजूदा प्रोजेक्ट को इंपोर्ट करने पर, Android Studio ज़रूरी बिल्ड फ़ाइलें अपने-आप जनरेट करता है.
बिल्ड सिस्टम और अपने बिल्ड को कॉन्फ़िगर करने के तरीके के बारे में ज़्यादा जानने के लिए, अपना बिल्ड कॉन्फ़िगर करना लेख पढ़ें.
वैरिएंट बनाना
बिल्ड सिस्टम की मदद से, एक ही प्रोजेक्ट से एक ही ऐप्लिकेशन के अलग-अलग वर्शन बनाए जा सकते हैं. यह तब काम आता है, जब आपके पास अपने ऐप्लिकेशन का मुफ़्त वर्शन और पैसे देकर खरीदा गया वर्शन, दोनों हों. इसके अलावा, यह तब भी काम आता है, जब आपको Google Play पर अलग-अलग डिवाइस कॉन्फ़िगरेशन के हिसाब से कई APK उपलब्ध कराना हो.
बिल्ड वैरिएंट को कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, बिल्ड वैरिएंट कॉन्फ़िगर करना लेख पढ़ें.
एक से ज़्यादा APK के साथ काम करने की सुविधा
एक से ज़्यादा APK बनाने की सुविधा की मदद से, स्क्रीन के घनत्व या एबीआई के आधार पर एक से ज़्यादा APK बनाए जा सकते हैं. उदाहरण के लिए, hdpi
और mdpi
स्क्रीन डेंसिटी के लिए, ऐप्लिकेशन के अलग-अलग APK बनाए जा सकते हैं. हालांकि, उन्हें एक ही वैरिएंट माना जा सकता है और उन्हें टेस्ट APK, javac
, dx
, और ProGuard की सेटिंग शेयर करने की अनुमति दी जा सकती है.
एक से ज़्यादा APK इस्तेमाल करने की सुविधा के बारे में ज़्यादा जानने के लिए, एक से ज़्यादा APK बनाएं लेख पढ़ें.
इस्तेमाल नहीं किए जाने वाले रिसॉर्स को हटाने की प्रोसेस
Android Studio में रिसॉर्स को छोटा करने की सुविधा, पैकेज किए गए ऐप्लिकेशन और लाइब्रेरी डिपेंडेंसी से, इस्तेमाल नहीं किए जा रहे रिसॉर्स को अपने-आप हटा देती है. उदाहरण के लिए, अगर आपका ऐप्लिकेशन, Google Drive की सुविधाओं को ऐक्सेस करने के लिए Google Play services का इस्तेमाल करता है और फ़िलहाल Google साइन इन का इस्तेमाल नहीं किया जा रहा है, तो संसाधन को छोटा करने पर SignInButton
बटन के लिए, ड्रॉ की जा सकने वाली अलग-अलग एसेट हट सकती हैं.
ध्यान दें: संसाधन को छोटा करने की सुविधा, कोड को छोटा करने वाले टूल के साथ काम करती है. जैसे, ProGuard.
कोड और संसाधनों को छोटा करने के बारे में ज़्यादा जानने के लिए, अपने ऐप्लिकेशन को छोटा करना, कोड को उलझाना, और उसे ऑप्टिमाइज़ करना लेख पढ़ें.
डिपेंडेंसी मैनेज करना
आपके प्रोजेक्ट की डिपेंडेंसी, मॉड्यूल-लेवल की बिल्ड स्क्रिप्ट में नाम से तय की जाती हैं. Gradle, डिपेंडेंसी ढूंढता है और उन्हें आपके बिल्ड में उपलब्ध कराता है. अपनी build.gradle.kts
फ़ाइल में, मॉड्यूल डिपेंडेंसी, रिमोट बाइनरी डिपेंडेंसी, और लोकल बाइनरी डिपेंडेंसी के बारे में बताया जा सकता है.
Android Studio, प्रोजेक्ट को डिफ़ॉल्ट रूप से Maven सेंट्रल रिपॉज़िटरी का इस्तेमाल करने के लिए कॉन्फ़िगर करता है. यह कॉन्फ़िगरेशन, प्रोजेक्ट के लिए टॉप-लेवल वाली बिल्ड फ़ाइल में शामिल होता है.
डिपेंडेंसी कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ें लेख पढ़ें.
डीबग और प्रोफ़ाइल करने वाले टूल
Android Studio की मदद से, कोड को डीबग किया जा सकता है और उसकी परफ़ॉर्मेंस को बेहतर बनाया जा सकता है. इसमें इनलाइन डीबगिंग और परफ़ॉर्मेंस का विश्लेषण करने वाले टूल भी शामिल हैं.
इनलाइन डीबगिंग
रेफ़रंस, एक्सप्रेशन, और वैरिएबल वैल्यू की इनलाइन पुष्टि करके, डिबगर व्यू में कोड वॉकथ्रू को बेहतर बनाने के लिए, इनलाइन डीबगिंग का इस्तेमाल करें.
इनलाइन डीबग जानकारी में ये चीज़ें शामिल हैं:
- इनलाइन वैरिएबल वैल्यू
- चुने गए ऑब्जेक्ट का रेफ़रंस देने वाले ऑब्जेक्ट
- मेथड की रिटर्न वैल्यू
- Lambda और ऑपरेटर एक्सप्रेशन
- टूलटिप की वैल्यू
इनलाइन डीबगिंग की सुविधा चालू करने के लिए, डीबग करें विंडो में, सेटिंग पर क्लिक करें. इसके बाद, एडिटर में वैरिएबल वैल्यू दिखाएं को चुनें.
परफ़ॉर्मेंस प्रोफ़ाइलर
Android Studio में परफ़ॉर्मेंस प्रोफ़ाइलर की सुविधा मिलती है. इसकी मदद से, ऐप्लिकेशन की मेमोरी और सीपीयू के इस्तेमाल को आसानी से ट्रैक किया जा सकता है. साथ ही, डिलीकेट किए गए ऑब्जेक्ट ढूंढे जा सकते हैं, मेमोरी लीक का पता लगाया जा सकता है, ग्राफ़िक की परफ़ॉर्मेंस को ऑप्टिमाइज़ किया जा सकता है, और नेटवर्क अनुरोधों का विश्लेषण किया जा सकता है.
अगर किसी डिवाइस या एम्युलेटर पर आपका ऐप्लिकेशन चल रहा है, तो परफ़ॉर्मेंस प्रोफ़ाइलर का इस्तेमाल करने के लिए व्यू > टूल Windows > प्रोफ़ाइलर को चुनकर Android प्रोफ़ाइलर खोलें.
परफ़ॉर्मेंस प्रोफ़ाइलर के बारे में ज़्यादा जानकारी के लिए, अपने ऐप्लिकेशन की परफ़ॉर्मेंस का प्रोफ़ाइल बनाना देखें.
हीप डंप
Android Studio में मेमोरी के इस्तेमाल की प्रोफ़ाइल बनाते समय, एक साथ कई काम किए जा सकते हैं. जैसे, गार्बेज कलेक्शन शुरू करना और Java हीप को Android के हिसाब से बनाई गई HPROF
बाइनरी फ़ॉर्मैट वाली फ़ाइल में हीप स्नैपशॉट में डंप करना. HPROF व्यूअर, क्लास, हर क्लास के इंस्टेंस, और रेफ़रंस ट्री दिखाता है. इससे आपको मेमोरी के इस्तेमाल को ट्रैक करने और मेमोरी लीक का पता लगाने में मदद मिलती है.
हीप डंप के साथ काम करने के बारे में ज़्यादा जानकारी के लिए, हीप डंप को कैप्चर करना लेख पढ़ें.
मेमोरी प्रोफ़ाइलर
मेमोरी ऐलोकेशन को ट्रैक करने के लिए, मेमोरी प्रोफ़ाइलर का इस्तेमाल करें. साथ ही, यह देखें कि कुछ कार्रवाइयां करने पर ऑब्जेक्ट कहां ऐलोकेट किए जा रहे हैं. इन ऐलोकेशन की मदद से, उन कार्रवाइयों से जुड़े तरीकों के कॉल में बदलाव करके, अपने ऐप्लिकेशन की परफ़ॉर्मेंस और मेमोरी के इस्तेमाल को ऑप्टिमाइज़ किया जा सकता है.
असाइन किए गए डेटा को ट्रैक करने और उसका विश्लेषण करने के बारे में जानने के लिए, मेमोरी का बंटवारा देखना लेख पढ़ें.
डेटा फ़ाइल का ऐक्सेस
Android SDK टूल, जैसे कि Systrace और Logcat, ऐप्लिकेशन के विश्लेषण के लिए परफ़ॉर्मेंस और डीबगिंग डेटा जनरेट करते हैं.
जनरेट की गई उपलब्ध डेटा फ़ाइलें देखने के लिए:
- कैप्चर टूल की विंडो खोलें.
- जनरेट की गई फ़ाइलों की सूची में, डेटा देखने के लिए किसी फ़ाइल पर दो बार क्लिक करें.
- किसी भी HPROF फ़ाइल को स्टैंडर्ड में बदलने के लिए, उस पर राइट क्लिक करें.
- रैम के इस्तेमाल से जुड़ी फ़ाइल के फ़ॉर्मैट की जांच करें.
कोड की जांच
जब भी प्रोग्राम को कंपाइल किया जाता है, तो Android Studio अपने-आप कॉन्फ़िगर की गई lint जांच और अन्य IDE जांच करता है. इससे, आपको कोड के स्ट्रक्चर की क्वालिटी से जुड़ी समस्याओं की आसानी से पहचान करने और उन्हें ठीक करने में मदद मिलती है.
लिंट टूल, आपके Android प्रोजेक्ट की सोर्स फ़ाइलों में संभावित गड़बड़ियों की जांच करता है. साथ ही, सही होने, सुरक्षा, परफ़ॉर्मेंस, इस्तेमाल करने, ऐक्सेस करने, और अंतरराष्ट्रीय स्तर पर उपलब्ध कराने के लिए, ऑप्टिमाइज़ेशन में सुधार करता है.
Android Studio, कोड की जांच करने के साथ-साथ IntelliJ कोड की जांच भी करता है. साथ ही, कोडिंग वर्कफ़्लो को बेहतर बनाने के लिए, एनोटेशन की पुष्टि करता है.
ज़्यादा जानकारी के लिए, लिंट की जांच की मदद से अपने कोड को बेहतर बनाना लेख पढ़ें.
Android Studio में एनोटेशन
Android Studio में वैरिएबल, पैरामीटर, और रिटर्न वैल्यू के लिए एनोटेशन की सुविधा उपलब्ध है. इससे आपको गड़बड़ियों का पता लगाने में मदद मिलती है. जैसे, शून्य पॉइंटर अपवाद और रिसॉर्स टाइप के संघर्ष.
Android SDK मैनेजर, Android Studio के साथ इस्तेमाल करने के लिए, Android सपोर्ट रिपॉज़िटरी में Jetpack एनोटेशन लाइब्रेरी को पैकेज करता है. Android Studio, कोड की जांच के दौरान कॉन्फ़िगर किए गए एनोटेशन की पुष्टि करता है.
Android एनोटेशन के बारे में ज़्यादा जानने के लिए, एनोटेशन की मदद से कोड की जांच को बेहतर बनाना लेख पढ़ें.
मैसेज लॉग करें
Android Studio की मदद से ऐप्लिकेशन बनाने और उसे चलाने पर, Logcat विंडो में adb
आउटपुट और डिवाइस के लॉग मैसेज देखे जा सकते हैं.
अपने डेवलपर खाते में साइन इन करें
ऐप्लिकेशन की क्वालिटी के बारे में अहम जानकारी में Firebase और Android Vitals जैसे अन्य टूल ऐक्सेस करने के लिए, Android Studio में अपने डेवलपर खाते में साइन इन करें. साथ ही, Android Studio में Gemini का इस्तेमाल करें. साइन इन करने का मतलब है कि आपने उन टूल को, Google की सभी सेवाओं पर मौजूद अपना डेटा देखने और मैनेज करने की अनुमति दी है.
Android Studio में अपने डेवलपर खाते में साइन इन करने के लिए, टूलबार के आखिर में मौजूद प्रोफ़ाइल आइकॉन पर क्लिक करें. आपको जिन सुविधाओं को चालू करना है उनके लिए, IDE को सिर्फ़ ज़रूरी अनुमतियां दें. इसके लिए, निर्देशों का पालन करें. अगर आपने पहले ही साइन इन कर लिया है, तो फ़ाइल (macOS पर Android Studio) > सेटिंग > टूल > Google खाते पर जाकर अनुमतियां मैनेज करें.