Android Studio के बारे में जानें

Android Studio, Android ऐप्लिकेशन डेवलपमेंट के लिए आधिकारिक इंटिग्रेटेड डेवलपमेंट एनवायरमेंट (आईडीई) है. Android Studio, IntelliJ IDEA के पावरफ़ुल कोड एडिटर और डेवलपर टूल पर आधारित है. इसमें 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 Gradle प्लगिन, Android के लिए खास तौर पर बनाई गई सुविधाएं उपलब्ध कराता है. यह बिल्ड सिस्टम, Android Studio मेन्यू से इंटिग्रेट किए गए टूल के तौर पर काम करता है. साथ ही, यह कमांड लाइन से भी अलग से काम करता है. बिल्ड सिस्टम की सुविधाओं का इस्तेमाल करके, ये काम किए जा सकते हैं:

  • बिल्ड प्रोसेस को अपनी पसंद के मुताबिक बनाएं, कॉन्फ़िगर करें, और बढ़ाएं.
  • एक ही प्रोजेक्ट और मॉड्यूल का इस्तेमाल करके, अपने ऐप्लिकेशन के लिए अलग-अलग सुविधाओं वाले कई APK बनाएं.
  • सोर्स सेट में कोड और संसाधनों का फिर से इस्तेमाल करें.

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

अगर Kotlin (सुझाया गया) का इस्तेमाल किया जाता है, तो Android Studio की बिल्ड फ़ाइलों का नाम build.gradle.kts होता है. वहीं, अगर Groovy का इस्तेमाल किया जाता है, तो बिल्ड फ़ाइलों का नाम build.gradle होता है. ये सामान्य टेक्स्ट फ़ाइलें होती हैं. इनमें Kotlin या Groovy सिंटैक्स का इस्तेमाल किया जाता है. इनकी मदद से, Android Gradle प्लगिन के दिए गए एलिमेंट का इस्तेमाल करके बिल्ड को कॉन्फ़िगर किया जाता है. हर प्रोजेक्ट के लिए, पूरे प्रोजेक्ट के लिए एक टॉप-लेवल की बिल्ड फ़ाइल होती है. साथ ही, हर मॉड्यूल के लिए अलग-अलग मॉड्यूल-लेवल की बिल्ड फ़ाइलें होती हैं. किसी मौजूदा प्रोजेक्ट को इंपोर्ट करने पर, Android Studio ज़रूरी बिल्ड फ़ाइलें अपने-आप जनरेट करता है.

build.gradle

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

बिल्ड के वैरिएंट

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

बिल्ड वैरिएंट कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, बिल्ड वैरिएंट कॉन्फ़िगर करना लेख पढ़ें.

एक से ज़्यादा APK इस्तेमाल करने की सुविधा

एक से ज़्यादा APK की सुविधा की मदद से, स्क्रीन डेंसिटी या ABI के आधार पर कई APK आसानी से बनाए जा सकते हैं. उदाहरण के लिए, किसी ऐप्लिकेशन के अलग-अलग APK बनाए जा सकते हैं. जैसे, hdpi और mdpi स्क्रीन डेंसिटी के लिए. हालांकि, इन्हें एक ही वैरिएंट माना जाएगा. साथ ही, ये टेस्ट 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, परफ़ॉर्मेंस प्रोफ़ाइलर उपलब्ध कराता है. इनकी मदद से, अपने ऐप्लिकेशन की मेमोरी और सीपीयू के इस्तेमाल को आसानी से ट्रैक किया जा सकता है. साथ ही, डीऐलोकेट किए गए ऑब्जेक्ट ढूंढे जा सकते हैं, मेमोरी लीक का पता लगाया जा सकता है, ग्राफ़िक्स परफ़ॉर्मेंस को ऑप्टिमाइज़ किया जा सकता है, और नेटवर्क अनुरोधों का विश्लेषण किया जा सकता है.

परफ़ॉर्मेंस प्रोफ़ाइलर का इस्तेमाल करने के लिए, डिवाइस या एम्युलेटर पर अपना ऐप्लिकेशन चालू करें. इसके बाद, View > Tool Windows > Profiler को चुनकर Android Profiler खोलें.

परफ़ॉर्मेंस प्रोफ़ाइलर के बारे में ज़्यादा जानने के लिए, अपने ऐप्लिकेशन की परफ़ॉर्मेंस की प्रोफ़ाइल बनाना लेख पढ़ें.

हीप डंप

Android Studio में मेमोरी के इस्तेमाल की प्रोफ़ाइल बनाते समय, एक साथ ये काम किए जा सकते हैं: कचरा इकट्ठा करना और Java हीप को Android के लिए खास HPROF बाइनरी फ़ॉर्मैट फ़ाइल में हीप स्नैपशॉट में डंप करना. HPROF व्यूअर, क्लास, हर क्लास के इंस्टेंस, और रेफ़रंस ट्री दिखाता है. इससे आपको मेमोरी के इस्तेमाल को ट्रैक करने और मेमोरी लीक का पता लगाने में मदद मिलती है.

हीप डंप के साथ काम करने के बारे में ज़्यादा जानने के लिए, हीप डंप कैप्चर करना लेख पढ़ें.

मेमोरी प्रोफ़ाइलर

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

मेमोरी के बंटवारे को ट्रैक करने और उसका विश्लेषण करने के बारे में जानकारी के लिए, मेमोरी का बंटवारा देखना लेख पढ़ें.

डेटा फ़ाइल का ऐक्सेस

Android SDK टूल, जैसे कि Systrace और Logcat, ऐप्लिकेशन का बेहतर तरीके से विश्लेषण करने के लिए, परफ़ॉर्मेंस और डीबग करने से जुड़ा डेटा जनरेट करते हैं.

जनरेट की गई डेटा फ़ाइलें देखने के लिए:

  1. Captures टूल विंडो खोलें.
  2. जनरेट की गई फ़ाइलों की सूची में, डेटा देखने के लिए किसी फ़ाइल पर दो बार क्लिक करें.
  3. किसी भी HPROF फ़ाइल को स्टैंडर्ड फ़ॉर्मैट में बदलने के लिए, उस पर राइट क्लिक करें.
  4. RAM के इस्तेमाल से जुड़ी फ़ाइल फ़ॉर्मैट की जांच करें.

कोड की जांच

जब भी प्रोग्राम को कंपाइल किया जाता है, तब Android Studio अपने-आप कॉन्फ़िगर किए गए lint चेक और अन्य IDE निरीक्षण चलाता है. इससे आपको अपने कोड की स्ट्रक्चरल क्वालिटी से जुड़ी समस्याओं की आसानी से पहचान करने और उन्हें ठीक करने में मदद मिलती है.

लिंट टूल, आपकी Android प्रोजेक्ट की सोर्स फ़ाइलों में संभावित गड़बड़ियों की जांच करता है. साथ ही, यह सही तरीके से काम करने, सुरक्षा, परफ़ॉर्मेंस, इस्तेमाल में आसानी, ऐक्सेस करने में आसानी, और अंतरराष्ट्रीयकरण के लिए ऑप्टिमाइज़ेशन से जुड़े सुधारों की जांच करता है.

दूसरी इमेज. Android Studio में लिंट की जांच के नतीजे.

लिंट की जांच के अलावा, Android Studio, IntelliJ कोड की जांच करता है और एनोटेशन की पुष्टि करता है, ताकि कोडिंग के आपके वर्कफ़्लो को बेहतर बनाया जा सके.

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

Android Studio में एनोटेशन

Android Studio में, वैरिएबल, पैरामीटर, और रिटर्न वैल्यू के लिए एनोटेशन इस्तेमाल किए जा सकते हैं. इससे आपको गड़बड़ियों का पता लगाने में मदद मिलती है. जैसे, null pointer exception और एक जैसे नाम या टाइप वाले कई रिसॉर्स की मौजूदगी से होने वाली समस्या.

Android SDK Manager, Android Studio के साथ इस्तेमाल करने के लिए, Android Support Repository में Jetpack Annotations लाइब्रेरी को पैकेज करता है. Android Studio, कोड की जांच के दौरान कॉन्फ़िगर किए गए एनोटेशन की पुष्टि करता है.

Android एनोटेशन के बारे में ज़्यादा जानने के लिए, एनोटेशन की मदद से कोड की जांच को बेहतर बनाना लेख पढ़ें.

लॉग मैसेज

Android Studio की मदद से ऐप्लिकेशन बनाने और उसे चलाने पर, Logcat विंडो में adb आउटपुट और डिवाइस के लॉग मैसेज देखे जा सकते हैं.

अपने डेवलपर खाते में साइन इन करना

Android Studio में अपने डेवलपर खाते में साइन इन करें. इससे आपको ऐसे अतिरिक्त टूल ऐक्सेस करने में मदद मिलेगी जिनके लिए पुष्टि करना ज़रूरी है. जैसे, ऐप्लिकेशन की क्वालिटी के बारे में अहम जानकारी में Firebase और Android Vitals, और Android Studio में Gemini. साइन इन करने का मतलब है कि आपने इन टूल को, Google की सभी सेवाओं पर मौजूद अपना डेटा देखने और मैनेज करने की अनुमति दी है.

Android Studio में अपने डेवलपर खाते में साइन इन करने के लिए, टूलबार के आखिर में मौजूद प्रोफ़ाइल आइकॉन पर क्लिक करें. निर्देशों का पालन करके, IDE को सिर्फ़ वे अनुमतियां दें जो आपको चालू करनी हैं. अगर आपने पहले से ही साइन इन किया हुआ है, तो अनुमतियां मैनेज करने के लिए फ़ाइल (macOS पर Android Studio) > सेटिंग > टूल > Google खाते पर जाएं.