अपने प्रोजेक्ट को Android Studio पर माइग्रेट करने के लिए, आपको प्रोजेक्ट के नए स्ट्रक्चर, बिल्ड सिस्टम, और आईडीई की सुविधाओं के हिसाब से काम करना होगा.
अगर आपको IntelliJ से माइग्रेट करना है और आपका प्रोजेक्ट पहले से ही Gradle का इस्तेमाल करता है, तो Android Studio में अपना मौजूदा प्रोजेक्ट खोला जा सकता है. अगर IntelliJ का इस्तेमाल किया जा रहा है, लेकिन आपके प्रोजेक्ट में पहले से Gradle का इस्तेमाल नहीं किया जा रहा है, तो Android Studio में इंपोर्ट करने से पहले, आपको अपने प्रोजेक्ट को मैन्युअल तरीके से तैयार करना होगा. ज़्यादा जानकारी के लिए, IntelliJ से माइग्रेट करना सेक्शन देखें.
Android Studio के बारे में बुनियादी जानकारी
यहां कुछ मुख्य अंतर दिए गए हैं, जिन्हें Android Studio पर माइग्रेट करने की तैयारी करते समय आपको पता होना चाहिए.
प्रोजेक्ट और मॉड्यूल का व्यवस्थित होना
Android Studio, IntelliJ IDEA IDE पर आधारित है. नेविगेशन, कोड पूरा करने की सुविधा, और कीबोर्ड शॉर्टकट जैसे IDE की बुनियादी बातों के बारे में जानने के लिए, Android Studio के बारे में जानकारी लेख पढ़ें.
Android Studio, कोड को प्रोजेक्ट में व्यवस्थित करता है. इन प्रोजेक्ट में, आपके Android ऐप्लिकेशन के बारे में बताने वाली सभी चीज़ें शामिल होती हैं. जैसे, ऐप्लिकेशन के सोर्स कोड से लेकर, बिल्ड कॉन्फ़िगरेशन और टेस्ट कोड तक. प्रोजेक्ट, Android Studio की अलग-अलग विंडो में खुलते हैं. हर प्रोजेक्ट में एक या एक से ज़्यादा मॉड्यूल होते हैं. इनकी मदद से, अपने प्रोजेक्ट को फ़ंक्शन के हिसाब से अलग-अलग यूनिट में बांटा जा सकता है. मॉड्यूल खुद बनाए, टेस्ट किए जा सकते हैं, और डीबग किए जा सकते हैं.
Android Studio प्रोजेक्ट और मॉड्यूल के बारे में ज़्यादा जानकारी के लिए, प्रोजेक्ट की खास जानकारी देखें.
Gradle पर आधारित बिल्ड सिस्टम
Android Studio का बिल्ड सिस्टम, Gradle पर आधारित है. साथ ही, इसमें Groovy या Kotlin स्क्रिप्ट में लिखी गई बिल्ड कॉन्फ़िगरेशन फ़ाइलों का इस्तेमाल किया जाता है, ताकि इन्हें आसानी से बड़ा और पसंद के मुताबिक बनाया जा सके.
Gradle पर आधारित प्रोजेक्ट, Android डेवलपमेंट के लिए अहम सुविधाएं देते हैं. इनमें ये शामिल हैं:
- बाइनरी लाइब्रेरी (एएआर) के लिए सहायता. अब आपको लाइब्रेरी के सोर्स को अपने प्रोजेक्ट में कॉपी करने की ज़रूरत नहीं है. इसके बजाय, डिपेंडेंसी का एलान किया जा सकता है. ऐसा करने पर, लाइब्रेरी अपने-आप डाउनलोड हो जाएगी और आपके प्रोजेक्ट में मर्ज हो जाएगी. इसमें, बिल्ड के समय संसाधनों, मेनिफ़ेस्ट एंट्री, Proguard के बाहर रखे जाने वाले नियमों, कस्टम लिंट नियमों वगैरह को अपने-आप मर्ज करना शामिल है.
- बिल्ड वैरिएंट के लिए सहायता, जिसकी मदद से एक ही प्रोजेक्ट से अपने ऐप्लिकेशन के अलग-अलग वर्शन बनाए जा सकते हैं. जैसे, मुफ़्त वर्शन और प्रो वर्शन.
- बिल्ड कॉन्फ़िगरेशन और पसंद के मुताबिक बनाने की सुविधा आसान है. उदाहरण के लिए, बिल्ड के हिस्से के तौर पर, Git टैग से वर्शन के नाम और वर्शन कोड खींचे जा सकते हैं.
- Gradle का इस्तेमाल आईडीई, कमांड-लाइन, और Jenkins जैसे लगातार इंटिग्रेशन सर्वर से किया जा सकता है. इससे हर जगह और हर समय एक ही बिल्ड मिलता है.
Gradle का इस्तेमाल करने और उसे कॉन्फ़िगर करने के बारे में ज़्यादा जानने के लिए, अपना बिल्ड कॉन्फ़िगर करना लेख पढ़ें.
डिपेंडेंसी
Android Studio में लाइब्रेरी डिपेंडेंसी, Gradle डिपेंडेंसी एलान और Maven डिपेंडेंसी का इस्तेमाल करती हैं. ये डिपेंडेंसी, Maven कोऑर्डिनेट वाले लोकप्रिय लोकल सोर्स और बाइनरी लाइब्रेरी के लिए इस्तेमाल की जाती हैं. ज़्यादा जानकारी के लिए, डिपेंडेंसी का एलान करना देखें.
IntelliJ से माइग्रेट करना
अगर आपका IntelliJ प्रोजेक्ट, Gradle बिल्ड सिस्टम का इस्तेमाल करता है, तो अपने प्रोजेक्ट को सीधे Android Studio में इंपोर्ट किया जा सकता है. अगर आपका IntelliJ प्रोजेक्ट, Maven या किसी दूसरे बिल्ड सिस्टम का इस्तेमाल करता है, तो Android Studio पर माइग्रेट करने से पहले, आपको इसे Gradle के साथ काम करने के लिए सेट अप करना होगा.
Gradle पर आधारित IntelliJ प्रोजेक्ट इंपोर्ट करना
अगर पहले से ही अपने IntelliJ प्रोजेक्ट के साथ Gradle का इस्तेमाल किया जा रहा है, तो यहां दिया गया तरीका अपनाकर इसे Android Studio में खोलें:
- फ़ाइल > नया > प्रोजेक्ट इंपोर्ट करें पर क्लिक करें.
- अपनी IntelliJ प्रोजेक्ट डायरेक्ट्री चुनें और ठीक है पर क्लिक करें. आपका प्रोजेक्ट, Android Studio में खुल जाएगा.
Gradle के बजाय किसी दूसरे इंटिग्रेटर का इस्तेमाल करके बनाया गया IntelliJ प्रोजेक्ट इंपोर्ट करना
अगर आपका IntelliJ प्रोजेक्ट पहले से Gradle बिल्ड सिस्टम का इस्तेमाल नहीं करता है, तो आपके पास Android Studio में प्रोजेक्ट इंपोर्ट करने के लिए दो विकल्प हैं. इनकी जानकारी नीचे दिए गए सेक्शन में दी गई है:
- Android Studio में एक नया खाली प्रोजेक्ट बनाएं और अपने मौजूदा सोर्स कोड को नए प्रोजेक्ट से जुड़ी डायरेक्ट्री में कॉपी करें. ज़्यादा जानकारी के लिए, नया खाली प्रोजेक्ट बनाकर माइग्रेट करने के बारे में सेक्शन देखें.
- अपने प्रोजेक्ट के लिए एक नई Gradle बिल्ड फ़ाइल बनाएं. इसके बाद, प्रोजेक्ट और नई बिल्ड फ़ाइल को Android Studio में इंपोर्ट करें. ज़्यादा जानकारी के लिए, कस्टम Gradle बिल्ड फ़ाइल बनाकर माइग्रेट करने के बारे में सेक्शन देखें.
नया प्रोजेक्ट बनाकर माइग्रेट करें
नया खाली प्रोजेक्ट बनाकर और अपनी सोर्स फ़ाइलों को नई डायरेक्ट्री में कॉपी करके, अपने प्रोजेक्ट को Android Studio में माइग्रेट करने के लिए, यह तरीका अपनाएं:
- Android Studio खोलें और फ़ाइल > नया > नया प्रोजेक्ट पर क्लिक करें.
- अपने ऐप्लिकेशन प्रोजेक्ट का नाम डालें और वह जगह बताएं जहां इसे बनाया जाना चाहिए. इसके बाद, आगे बढ़ें पर क्लिक करें.
- वे डिवाइस फ़ॉर्मैट चुनें जिन पर आपका ऐप्लिकेशन काम करता है. इसके बाद, आगे बढ़ें पर क्लिक करें.
- कोई गतिविधि नहीं जोड़ें पर क्लिक करें. इसके बाद, पूरा करें पर क्लिक करें.
- प्रोजेक्ट टूल विंडो में, व्यू मेन्यू खोलने के लिए ऐरो पर क्लिक करें. इसके बाद, अपने नए Android Studio प्रोजेक्ट के संगठन को देखने और एक्सप्लोर करने के लिए, प्रोजेक्ट व्यू चुनें. व्यू बदलने और Android Studio को स्ट्रक्चर करने के तरीके के बारे में ज़्यादा जानने के लिए, प्रोजेक्ट फ़ाइलें देखें.
- अपने नए प्रोजेक्ट के लिए चुनी गई जगह पर जाएं और कोड, यूनिट टेस्ट, इंस्ट्रूमेंटेशन टेस्ट, और संसाधनों को अपनी पुरानी प्रोजेक्ट डायरेक्ट्री से, अपने नए प्रोजेक्ट के स्ट्रक्चर में सही जगहों पर ले जाएं.
- Android Studio में, प्रोजेक्ट का स्ट्रक्चर डायलॉग बॉक्स खोलने के लिए, फ़ाइल > प्रोजेक्ट का स्ट्रक्चर पर क्लिक करें. पक्का करें कि बाएं पैनल में, आपके ऐप्लिकेशन का मॉड्यूल चुना गया हो.
- अपने प्रोजेक्ट के प्रॉपर्टी टैब में जाकर, सभी ज़रूरी बदलाव करें. उदाहरण के लिए,
minSdk
याtargetSdk
में बदलाव करना. - डिपेंडेंसी पर क्लिक करें और ऐसी लाइब्रेरी जोड़ें जो आपका प्रोजेक्ट, Gradle डिपेंडेंसी के तौर पर निर्भर करता है. कोई नई डिपेंडेंसी जोड़ने के लिए, जोड़ें पर क्लिक करें. इसके बाद, वह डिपेंडेंसी टाइप चुनें जिसे जोड़ना है और निर्देशों का पालन करें.
- बदलावों को सेव करने के लिए, ठीक है पर क्लिक करें.
- अपने प्रोजेक्ट को बनाने की जांच करने के लिए, बिल्ड करें > प्रोजेक्ट बनाएं पर क्लिक करें. साथ ही, अगर ज़रूरी हो, तो बाकी बची गड़बड़ियों को ठीक करें.
कस्टम Gradle बिल्ड फ़ाइल बनाकर माइग्रेट करना
अपनी मौजूदा सोर्स फ़ाइलों को दिखाने के लिए, नई Gradle बिल्ड फ़ाइल बनाकर अपने प्रोजेक्ट को Android Studio में माइग्रेट करने के लिए, यह तरीका अपनाएं:
- शुरू करने से पहले, अपनी प्रोजेक्ट फ़ाइलों का बैक अप किसी अलग जगह पर लें, क्योंकि माइग्रेशन की प्रोसेस, उस जगह पर आपके प्रोजेक्ट के कॉन्टेंट में बदलाव करती है.
- अगर Groovy का इस्तेमाल किया जा रहा है, तो अपनी प्रोजेक्ट डायरेक्ट्री में
build.gradle
नाम की फ़ाइल बनाएं. अगर Kotlin स्क्रिप्ट का इस्तेमाल किया जा रहा है, तोbuild.gradle.kts
नाम की फ़ाइल बनाएं. इस फ़ाइल में, Gradle को आपका बिल्ड चलाने के लिए ज़रूरी सारी जानकारी होती है.डिफ़ॉल्ट रूप से, Android Studio को उम्मीद है कि आपका प्रोजेक्ट, पहले चित्र में दिखाए गए तरीके से व्यवस्थित किया गया होगा.
Groovy के लिए
settings.gradle
या Kotlin स्क्रिप्ट के लिएsettings.gradle.kts
में, आपने उन रिपॉज़िटरी को सेट किया है जिनका इस्तेमाल,pluginManagement
औरdependencyResolutionManagement
ब्लॉक में प्लग इन और डिपेंडेंसी ढूंढने के लिए किया जाता है:Groovy
pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } } rootProject.name = "Test App" include ':app'
Kotlin
pluginManagement { repositories { google() mavenCentral() gradlePluginPortal() } } dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() } } rootProject.name = "Test App" include(":app")
चेतावनी: JCenter रिपॉज़िटरी 31 मार्च, 2021 से रीड-ओनली मोड में है. ज़्यादा जानकारी के लिए, JCenter की सेवा से जुड़ा अपडेट देखें.
Android Gradle प्लग इन, प्रोजेक्ट पर कुछ डिफ़ॉल्ट सोर्स सेट लागू करता है. ये सोर्स सेट, अलग-अलग तरह की सोर्स फ़ाइलों को सेव करने के लिए इस्तेमाल की जाने वाली डायरेक्ट्री तय करते हैं. Gradle, इन सोर्स सेट का इस्तेमाल करके, अलग-अलग तरह की फ़ाइलों की जगहों का पता लगाता है. अगर आपका मौजूदा प्रोजेक्ट डिफ़ॉल्ट सेटिंग के मुताबिक नहीं है, तो आपके पास इनमें से कोई एक विकल्प है: फ़ाइलों को वहां ले जाएं जहां उन्हें होना चाहिए या डिफ़ॉल्ट सोर्स सेट बदलें, ताकि Gradle को पता चल सके कि उन्हें कहां ढूंढना है.
Gradle बिल्ड फ़ाइल को सेट अप और पसंद के मुताबिक बनाने के बारे में ज़्यादा जानकारी के लिए, अपने बिल्ड को कॉन्फ़िगर करें लेख पढ़ें.
इसके बाद, यह पता लगाएं कि किन लाइब्रेरी प्रोजेक्ट का इस्तेमाल किया जा रहा है.
Gradle के साथ, अब आपको इन लाइब्रेरी को सोर्स कोड प्रोजेक्ट के तौर पर जोड़ने की ज़रूरत नहीं है. इसके बजाय, अपनी बिल्ड फ़ाइल के
dependencies{}
ब्लॉक में इनका रेफ़रंस दिया जा सकता है. इसके बाद, बिल्ड सिस्टम इन लाइब्रेरी को मैनेज करता है. इसमें लाइब्रेरी डाउनलोड करना, रिसॉर्स मर्ज करना, और मेनिफ़ेस्ट एंट्री मर्ज करना शामिल है. इस उदाहरण में, बिल्ड फ़ाइल केdependencies{}
ब्लॉक में कई AndroidX लाइब्रेरी के लिए, एलान वाले स्टेटमेंट जोड़े गए हैं.ग्रूवी
... dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) // AndroidX libraries implementation 'androidx.core:core-ktx:1.15.0' implementation 'androidx.appcompat:appcompat:1.7.0' implementation 'androidx.cardview:cardview:1.0.0' implementation 'com.google.android.material:material:1.7.0' implementation 'androidx.gridlayout:gridlayout:1.0.0' implementation 'androidx.leanback:leanback:1.1.0-rc02' implementation 'androidx.mediarouter:mediarouter:1.7.0' implementation 'androidx.palette:palette-ktx:1.0.0' implementation 'androidx.recyclerview:recyclerview:1.3.2' implementation 'androidx.annotation:annotation:1.9.1' // Note: these libraries require that the Google repository has been declared // in the pluginManagement section of the top-level build.gradle file. }
Kotlin
... dependencies { implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar")))) // AndroidX libraries implementation("androidx.core:core-ktx:1.15.0") implementation("androidx.appcompat:appcompat:1.7.0") implementation("androidx.cardview:cardview:1.0.0") implementation("com.google.android.material:material:1.7.0") implementation("androidx.gridlayout:gridlayout:1.0.0") implementation("androidx.leanback:leanback:1.1.0-rc02") implementation("androidx.mediarouter:mediarouter:1.7.0") implementation("androidx.palette:palette-ktx:1.0.0") implementation("androidx.recyclerview:recyclerview:1.3.2") implementation("androidx.annotation:annotation:1.9.1") // Note: these libraries require that the Google repository has been declared // in the pluginManagement section of the top-level build.gradle.kts file. }
- अपनी
build.gradle
फ़ाइल सेव करें. इसके बाद, IntelliJ में प्रोजेक्ट को बंद करें. अपनी प्रोजेक्ट डायरेक्ट्री पर जाएं और अपने प्रोजेक्ट में मौजूद.idea
डायरेक्ट्री और सभी IML फ़ाइलें मिटाएं. - Android Studio खोलें और फ़ाइल > नया > प्रोजेक्ट इंपोर्ट करें पर क्लिक करें.
- अपनी प्रोजेक्ट डायरेक्ट्री ढूंढें और अपनी बनाई गई
build.gradle
याbuild.gradle.kts
फ़ाइल चुनें. इसके बाद, प्रोजेक्ट को इंपोर्ट करने के लिए ठीक है पर क्लिक करें. - अपना प्रोजेक्ट बनाकर, अपनी बिल्ड फ़ाइल टेस्ट करने के लिए, बिल्ड > प्रोजेक्ट बनाएं पर क्लिक करें. इसके बाद, अगर आपको कोई गड़बड़ी मिलती है, तो उसे ठीक करें.
अगले चरण
अपने प्रोजेक्ट को Android Studio पर माइग्रेट करने के बाद, अपना ऐप्लिकेशन बनाएं और चलाएं लेख पढ़कर, Gradle की मदद से ऐप्लिकेशन बनाने और Android Studio में उसे चलाने के बारे में ज़्यादा जानें.
अपने प्रोजेक्ट और वर्कफ़्लो के हिसाब से, आपको वर्शन कंट्रोल, डिपेंडेंसी मैनेज करने, और Android Studio को कॉन्फ़िगर करने के बारे में ज़्यादा जानना भी पड़ सकता है. Android Studio का इस्तेमाल शुरू करने के लिए, Android Studio के बारे में जानें लेख पढ़ें.
वर्शन कंट्रोल कॉन्फ़िगर करें
Android Studio, वर्शन कंट्रोल के कई सिस्टम के साथ काम करता है. जैसे, Git, Mercurial, और Subversion. प्लग इन की मदद से, वर्शन कंट्रोल के अन्य सिस्टम जोड़े जा सकते हैं.
अगर आपका ऐप्लिकेशन पहले से ही सोर्स कंट्रोल में है, तो आपको Android Studio में इसे चालू करना पड़ सकता है. VCS मेन्यू में, वर्शन कंट्रोल इंटिग्रेशन चालू करें पर क्लिक करें और वर्शन कंट्रोल सिस्टम चुनें.
अगर आपका ऐप्लिकेशन सोर्स कंट्रोल में नहीं है, तो Android Studio में ऐप्लिकेशन इंपोर्ट करने के बाद, उसे कॉन्फ़िगर किया जा सकता है. अपने पसंदीदा वर्शन कंट्रोल सिस्टम के लिए, वर्शन कंट्रोल सिस्टम के साथ काम करने की सुविधा चालू करने, कोई रिपॉज़िटरी बनाने, नई फ़ाइलों को वर्शन कंट्रोल में इंपोर्ट करने, और वर्शन कंट्रोल से जुड़े अन्य काम करने के लिए, Android Studio के वर्शन कंट्रोल मेन्यू के विकल्पों का इस्तेमाल करें:
- Android Studio VCS मेन्यू में जाकर, वर्शन कंट्रोल इंटिग्रेशन चालू करें पर क्लिक करें.
- मेन्यू से प्रोजेक्ट रूट से जोड़ने के लिए, कोई वर्शन कंट्रोल सिस्टम चुनें. इसके बाद, ठीक है पर क्लिक करें. आपके चुने गए सिस्टम के आधार पर, अब वीसीएस मेन्यू में वर्शन कंट्रोल के कई विकल्प दिखते हैं.
ध्यान दें: वर्शन कंट्रोल को सेट अप करने और उसमें बदलाव करने के लिए, फ़ाइल > सेटिंग > वर्शन कंट्रोल मेन्यू विकल्प का भी इस्तेमाल किया जा सकता है.
वर्शन कंट्रोल के साथ काम करने के बारे में ज़्यादा जानने के लिए, IntelliJ के वर्शन कंट्रोल रेफ़रंस देखें.
ऐप पर हस्ताक्षर
अगर किसी डीबग सर्टिफ़िकेट का पहले इस्तेमाल किया गया था, तो इंपोर्ट प्रोसेस के दौरान उसका पता लग सकता है. इस मामले में, Android Studio उस सर्टिफ़िकेट का रेफ़रंस देता रहेगा. अगर ऐसा नहीं है, तो डीबग कॉन्फ़िगरेशन में, Android Studio से जनरेट किए गए डीबग कीस्टोर का इस्तेमाल किया जाता है. इसके लिए, पहले से मालूम पासवर्ड और $HOME/.android/debug.keystore
में मौजूद, उस डिफ़ॉल्ट पासवर्ड का इस्तेमाल किया जाता है. Android Studio से प्रोजेक्ट को चलाने या डीबग करने पर, डीबग कॉन्फ़िगरेशन का इस्तेमाल अपने-आप करने के लिए, डीबग बिल्ड टाइप सेट किया जाता है.
इसी तरह, इंपोर्ट करने की प्रोसेस में किसी मौजूदा रिलीज़ सर्टिफ़िकेट का पता लगाया जा सकता है.
अगर पहले कोई रिलीज़ सर्टिफ़िकेट तय नहीं किया गया था, तो build.gradle
या build.gradle.kts
फ़ाइल में रिलीज़ साइनिंग कॉन्फ़िगरेशन जोड़ें. इसके अलावा, साइन किया गया APK जनरेट करने वाला विज़र्ड खोलने के लिए, बिल्ड > साइन किया गया APK जनरेट करें मेन्यू विकल्प का इस्तेमाल करें. अपने ऐप्लिकेशन पर हस्ताक्षर करने के बारे में ज़्यादा जानने के लिए, अपने ऐप्लिकेशन पर हस्ताक्षर करना लेख पढ़ें.
Android Studio के हीप साइज़ में बदलाव करना
डिफ़ॉल्ट रूप से, Android Studio में 1280 एमबी तक का हेप साइज़ हो सकता है. अगर आप किसी बड़े प्रोजेक्ट पर काम कर रहे हैं या आपके सिस्टम में बहुत ज़्यादा रैम है, तो हीप के ज़्यादा से ज़्यादा साइज़ को बढ़ाकर, इसकी परफ़ॉर्मेंस को बेहतर बनाया जा सकता है.
सॉफ़्टवेयर अपडेट
Android Studio, Gradle प्लग इन, बिल्ड टूल, और SDK टूल से अलग अपडेट होता है. आपके पास यह तय करने का विकल्प होता है कि आपको Android Studio के साथ कौनसे वर्शन इस्तेमाल करने हैं.
डिफ़ॉल्ट रूप से, Android Studio में नया स्टैबल वर्शन रिलीज़ होने पर, अपडेट अपने-आप हो जाते हैं. हालांकि, इसे ज़्यादा बार अपडेट करने और रिलीज़ होने से पहले के वर्शन या बीटा वर्शन पाने का विकल्प चुना जा सकता है.
Android Studio को अपडेट करने और झलक और बीटा वर्शन का इस्तेमाल करने के बारे में ज़्यादा जानकारी के लिए, अपडेट के बारे में पढ़ें.