Android Studio, Android ऐप्लिकेशन डेवलपमेंट के लिए आधिकारिक इंटिग्रेटेड डेवलपमेंट एनवायरमेंट (आईडीई) है. IntelliJ IDEA के मज़बूत कोड एडिटर और डेवलपर टूल पर आधारित, Android Studio में और भी कई सुविधाएं हैं. इनसे Android ऐप्लिकेशन बनाते समय आपकी प्रॉडक्टिविटी बढ़ती है. जैसे:
- Gradle पर आधारित, फ़्लेक्सिबल बिल्ड सिस्टम
- तेज़ और सुविधाओं से भरपूर एम्युलेटर
- एक ऐसा यूनीफ़ाइड एनवायरमेंट जिसमें सभी Android डिवाइसों के लिए डेवलपमेंट किया जा सकता है
- एम्युलेटर और फ़िज़िकल डिवाइसों में कंपोज़ेबल को रीयल टाइम में अपडेट करने के लिए, लाइव एडिट की सुविधा
- कोड टेंप्लेट और GitHub इंटिग्रेशन की मदद से, ऐप्लिकेशन की सामान्य सुविधाएं बनाना और सैंपल कोड इंपोर्ट करना
- टेस्टिंग के लिए कई टूल और फ़्रेमवर्क
- परफ़ॉर्मेंस, इस्तेमाल में आसानी, वर्शन की कंपैटबिलिटी, और अन्य समस्याओं को पकड़ने के लिए, लिंट टूल
- C++ और NDK के लिए सपोर्ट
इस पेज पर, Android Studio की बुनियादी सुविधाओं के बारे में बताया गया है. हाल के बदलावों की खास जानकारी के लिए, Android Studio के रिलीज़ नोट देखें.
प्रोजेक्ट का स्ट्रक्चर
पहली इमेज. Android व्यू में प्रोजेक्ट की फ़ाइलें.
Android Studio में हर प्रोजेक्ट में एक या उससे ज़्यादा मॉड्यूल होते हैं. इनमें सोर्स कोड फ़ाइलें और संसाधन फ़ाइलें शामिल होती हैं. मॉड्यूल के टाइप में ये शामिल हैं:
- Android ऐप्लिकेशन मॉड्यूल
- लाइब्रेरी मॉड्यूल
- Google App Engine मॉड्यूल
डिफ़ॉल्ट रूप से, Android Studio आपके प्रोजेक्ट की फ़ाइलों को Android व्यू में दिखाता है. जैसा कि पहली इमेज में दिखाया गया है. इस व्यू को मॉड्यूल के हिसाब से व्यवस्थित किया जाता है, ताकि आपके प्रोजेक्ट की मुख्य सोर्स फ़ाइलों को तुरंत ऐक्सेस किया जा सके. सभी बिल्ड फ़ाइलें, सबसे ऊपर Gradle Scripts में दिखती हैं.
हर ऐप्लिकेशन मॉड्यूल में ये फ़ोल्डर शामिल होते हैं:
- manifests: इसमें
AndroidManifest.xmlफ़ाइल होती है. - java: इसमें Kotlin और Java के सोर्स कोड की फ़ाइलें शामिल होती हैं. इनमें JUnit टेस्ट कोड भी शामिल होता है.
- res: इसमें कोड के अलावा अन्य सभी संसाधन शामिल होते हैं. जैसे, यूज़र इंटरफ़ेस (यूआई) की स्ट्रिंग और बिटमैप इमेज.
डिस्क पर मौजूद Android प्रोजेक्ट का स्ट्रक्चर, इस फ़्लैटन किए गए स्ट्रक्चर से अलग होता है. प्रोजेक्ट का असल फ़ाइल स्ट्रक्चर देखने के लिए, प्रोजेक्ट मेन्यू में Android के बजाय प्रोजेक्ट चुनें.
ज़्यादा जानकारी के लिए, प्रोजेक्ट की खास जानकारी देखें.
Gradle बिल्ड सिस्टम
Android Studio, Gradle को बिल्ड सिस्टम के तौर पर इस्तेमाल करता है. साथ ही, ज़्यादा Android से जुड़ी सुविधाएं Android Gradle प्लगिन की मदद से मिलती हैं. यह बिल्ड सिस्टम, Android Studio के मेन्यू से इंटिग्रेटेड टूल के तौर पर काम करता है. साथ ही, इसे कमांड लाइन से भी चलाया जा सकता है. बिल्ड सिस्टम की सुविधाओं का इस्तेमाल करके, ये काम किए जा सकते हैं:
- बिल्ड प्रोसेस को पसंद के मुताबिक बनाना, कॉन्फ़िगर करना, और बढ़ाना.
- एक ही प्रोजेक्ट और मॉड्यूल का इस्तेमाल करके, अपने ऐप्लिकेशन के लिए अलग-अलग सुविधाओं वाले कई APK बनाना.
- सोर्स सेट में कोड और संसाधनों का फिर से इस्तेमाल करना.
Gradle की फ़्लेक्सिबिलिटी का इस्तेमाल करके, ये सभी काम अपने ऐप्लिकेशन की मुख्य सोर्स फ़ाइलों में बदलाव किए बिना किए जा सकते हैं.
अगर
Kotlin का इस्तेमाल किया जाता है, तो Android Studio की बिल्ड फ़ाइलों का नाम build.gradle.kts होता है. हमारा सुझाव है कि Kotlin का इस्तेमाल करें. वहीं, अगर
Groovy का इस्तेमाल किया जाता है, तो बिल्ड फ़ाइलों का नाम build.gradle होता है. ये सादी टेक्स्ट फ़ाइलें होती हैं. इनमें Kotlin या Groovy सिंटैक्स का इस्तेमाल करके, Android Gradle प्लगिन से मिले एलिमेंट की मदद से बिल्ड को कॉन्फ़िगर किया जाता है. हर प्रोजेक्ट के लिए, टॉप-लेवल की एक बिल्ड फ़ाइल होती है. साथ ही, हर मॉड्यूल के लिए, मॉड्यूल-लेवल की अलग-अलग बिल्ड फ़ाइलें होती हैं.
मौजूदा प्रोजेक्ट इंपोर्ट करने पर, 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 Central Repository का इस्तेमाल करने के लिए कॉन्फ़िगर करता है. यह कॉन्फ़िगरेशन, प्रोजेक्ट के लिए टॉप-लेवल की बिल्ड फ़ाइल में शामिल होता है.
डिपेंडेंसी कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, बिल्ड डिपेंडेंसी जोड़ना लेख पढ़ें.
डीबग करने और प्रोफ़ाइल बनाने वाले टूल
Android Studio, आपके कोड को डीबग करने और उसकी परफ़ॉर्मेंस को बेहतर बनाने में मदद करता है. इसमें इनलाइन डीबगिंग और परफ़ॉर्मेंस विश्लेषण के टूल शामिल हैं.
इनलाइन डीबगिंग
रेफ़रंस, एक्सप्रेशन, और वैरिएबल की वैल्यू की इनलाइन पुष्टि करके, डीबगर व्यू में कोड वॉकथ्रू को बेहतर बनाने के लिए, इनलाइन डीबगिंग का इस्तेमाल करें.
इनलाइन डीबग की जानकारी में ये शामिल हैं:
- वैरिएबल की इनलाइन वैल्यू
- चुने गए ऑब्जेक्ट को रेफ़रंस करने वाले ऑब्जेक्ट
- मेथड की रिटर्न वैल्यू
- Lambda और ऑपरेटर एक्सप्रेशन
- टूलटिप की वैल्यू
इनलाइन डीबगिंग चालू करने के लिए, डीबग विंडो में, सेटिंग
पर क्लिक करें और एडिटर में वैरिएबल की वैल्यू दिखाएं को चुनें.
परफ़ॉर्मेंस प्रोफ़ाइलर
Android Studio में परफ़ॉर्मेंस प्रोफ़ाइलर उपलब्ध हैं. इनकी मदद से, अपने ऐप्लिकेशन की मेमोरी और सीपीयू के इस्तेमाल को आसानी से ट्रैक किया जा सकता है. साथ ही, डीएलोकेट किए गए ऑब्जेक्ट ढूंढने, मेमोरी लीक का पता लगाने, ग्राफ़िक्स की परफ़ॉर्मेंस को ऑप्टिमाइज़ करने, और नेटवर्क के अनुरोधों का विश्लेषण करने में मदद मिलती है.
परफ़ॉर्मेंस प्रोफ़ाइलर का इस्तेमाल करने के लिए, किसी डिवाइस या एम्युलेटर पर अपना ऐप्लिकेशन चलाएं. इसके बाद, View > Tool Windows > Profiler चुनकर, Android Profiler खोलें.
परफ़ॉर्मेंस प्रोफ़ाइलर के बारे में ज़्यादा जानने के लिए, अपने ऐप्लिकेशन की परफ़ॉर्मेंस की प्रोफ़ाइल बनाना लेख पढ़ें.
हीप डंप
Android Studio में मेमोरी के इस्तेमाल की प्रोफ़ाइल बनाते समय, आप एक साथ गार्बेज कलेक्शन शुरू कर सकते हैं और Java हीप को Android के लिए खास HPROF बाइनरी फ़ॉर्मैट वाली फ़ाइल में, हीप स्नैपशॉट में डंप कर सकते हैं. HPROF व्यूअर, क्लास, हर क्लास के इंस्टेंस, और रेफ़रंस ट्री दिखाता है. इससे, मेमोरी के इस्तेमाल को ट्रैक करने और मेमोरी लीक ढूंढने में मदद मिलती है.
हीप डंप के साथ काम करने के बारे में ज़्यादा जानने के लिए, हीप डंप कैप्चर करना लेख पढ़ें.
मेमोरी प्रोफ़ाइलर
मेमोरी प्रोफ़ाइलर का इस्तेमाल करके, मेमोरी के ऐलोकेशन को ट्रैक किया जा सकता है. साथ ही, यह देखा जा सकता है कि कुछ कार्रवाइयां करने पर, ऑब्जेक्ट कहां ऐलोकेट किए जा रहे हैं. इन ऐलोकेशन की मदद से, उन कार्रवाइयों से जुड़े मेथड कॉल में बदलाव करके, अपने ऐप्लिकेशन की परफ़ॉर्मेंस और मेमोरी के इस्तेमाल को ऑप्टिमाइज़ किया जा सकता है.
ऐलोकेशन को ट्रैक करने और उनका विश्लेषण करने के बारे में जानने के लिए, मेमोरी ऐलोकेशन देखना लेख पढ़ें.
डेटा फ़ाइल का ऐक्सेस
Systrace और Logcat जैसे Android SDK टूल, ऐप्लिकेशन के विस्तृत विश्लेषण के लिए, परफ़ॉर्मेंस और डीबगिंग डेटा जनरेट करते हैं.
जनरेट की गई उपलब्ध डेटा फ़ाइलें देखने के लिए:
- Captures टूल विंडो खोलें.
- जनरेट की गई फ़ाइलों की सूची में, डेटा देखने के लिए किसी फ़ाइल पर दो बार क्लिक करें.
- किसी भी HPROF फ़ाइल पर राइट क्लिक करके, उन्हें स्टैंडर्ड में बदलें.
- रैम के इस्तेमाल की फ़ाइल फ़ॉर्मैट की जांच करें.
कोड की जांच
जब भी अपने प्रोग्राम को कंपाइल किया जाता है, तो Android Studio, कॉन्फ़िगर की गई लिंट की जांच और अन्य आईडीई की जांच अपने-आप करता है. इससे, आपके कोड की स्ट्रक्चरल क्वालिटी से जुड़ी समस्याओं को आसानी से पहचाना और ठीक किया जा सकता है.
लिंट टूल, आपके Android प्रोजेक्ट की सोर्स फ़ाइलों में संभावित गड़बड़ियों की जांच करता है. साथ ही, सही तरीके से काम करने, सुरक्षा, परफ़ॉर्मेंस, इस्तेमाल में आसानी, सुलभता, और अंतरराष्ट्रीयकरण के लिए, ऑप्टिमाइज़ेशन में सुधार की जांच करता है.

दूसरी इमेज. Android Studio में, लिंट की जांच के नतीजे.
लिंट की जांच के अलावा, Android Studio, IntelliJ के कोड की जांच करता है और एनोटेशन की पुष्टि करता है. इससे, आपके कोडिंग वर्कफ़्लो को बेहतर बनाया जा सकता है.
ज़्यादा जानकारी के लिए, लिंट की जांच की मदद से अपने कोड को बेहतर बनाना लेख पढ़ें.
Android Studio में एनोटेशन
Android Studio, वैरिएबल, पैरामीटर, और रिटर्न वैल्यू के लिए एनोटेशन को सपोर्ट करता है. इससे, गड़बड़ियों को पकड़ने में मदद मिलती है. जैसे, नल पॉइंटर एक्सेप्शन और रिसॉर्स टाइप के टकराव.
Android SDK Manager, Jetpack Annotations लाइब्रेरी को Android Support Repository में पैकेज करता है. इसका इस्तेमाल Android Studio के साथ किया जा सकता है. Android Studio, कोड की जांच के दौरान, कॉन्फ़िगर किए गए एनोटेशन की पुष्टि करता है.
Android के एनोटेशन के बारे में ज़्यादा जानने के लिए, एनोटेशन की मदद से कोड की जांच को बेहतर बनाना लेख पढ़ें.
लॉग मैसेज
Android Studio की मदद से, अपने ऐप्लिकेशन को बिल्ड और रन करने पर, adb आउटपुट और डिवाइस लॉग मैसेज Logcat विंडो में देखे जा सकते हैं.
अपने डेवलपर खाते में साइन इन करना
Android Studio में अपने डेवलपर खाते में साइन इन करें. इससे, उन अतिरिक्त टूल को ऐक्सेस किया जा सकता है जिनके लिए पुष्टि ज़रूरी होती है. जैसे, Firebase और Android Vitals, जो App Quality Insights में हैं. साथ ही, Android Studio में Gemini को भी ऐक्सेस किया जा सकता है. साइन इन करने पर, इन टूल को Google की सेवाओं में मौजूद आपके डेटा को देखने और मैनेज करने की अनुमति मिल जाती है.
Android Studio में अपने डेवलपर खाते में साइन इन करने के लिए, टूलबार के आखिर में मौजूद प्रोफ़ाइल आइकॉन
पर क्लिक करें. प्रॉम्प्ट का पालन करके, आईडीई को सिर्फ़ उन अनुमतियों के बारे में बताएं जिनकी ज़रूरत, चालू की जाने वाली हर सुविधा के लिए होती है. अगर आपने पहले ही साइन इन किया हुआ है, तो File (macOS पर Android Studio) > Settings > Tools > Google Accounts पर जाकर, अनुमतियां मैनेज करें.