Android Studio पर माइग्रेट करना

अपने प्रोजेक्ट को Android Studio पर माइग्रेट करने के लिए, आपको प्रोजेक्ट के नए स्ट्रक्चर, बिल्ड सिस्टम, और आईडीई की सुविधाओं के हिसाब से बदलाव करने होंगे.

अगर IntelliJ से माइग्रेट किया जा रहा है और आपके प्रोजेक्ट में पहले से Gradle का इस्तेमाल किया जा रहा है, तो Android Studio से अपना मौजूदा प्रोजेक्ट खोला जा सकता है. अगर IntelliJ का इस्तेमाल किया जा रहा है, लेकिन आपके प्रोजेक्ट में पहले से Gradle का इस्तेमाल नहीं किया जा रहा है, तो Android Studio में इंपोर्ट करने से पहले, आपको अपने प्रोजेक्ट को मैन्युअल तरीके से तैयार करना होगा. ज़्यादा जानकारी के लिए, IntelliJ से माइग्रेट करना सेक्शन देखें.

Android Studio की बुनियादी बातें

Android Studio पर माइग्रेट करने की तैयारी करते समय, आपको कुछ अहम अंतरों के बारे में पता होना चाहिए.

प्रोजेक्ट और मॉड्यूल को व्यवस्थित करना

Android Studio, IntelliJ IDEA आईडीई पर आधारित है. आईडीई की बुनियादी बातों के बारे में जानने के लिए, Android Studio के बारे में जानें लेख पढ़ें. इसमें नेविगेशन, कोड पूरा करने की सुविधा, और कीबोर्ड शॉर्टकट जैसी जानकारी शामिल है.

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

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

Gradle पर आधारित बिल्ड सिस्टम

Android Studio का बिल्ड सिस्टम, Gradle पर आधारित है. इसमें, एक्सटेंसिबिलिटी और पसंद के मुताबिक बनाने की सुविधा के लिए, Groovy या Kotlin स्क्रिप्ट में लिखी गई बिल्ड कॉन्फ़िगरेशन फ़ाइलों का इस्तेमाल किया जाता है.

Gradle पर आधारित प्रोजेक्ट, Android डेवलपमेंट के लिए अहम सुविधाएं देते हैं. इनमें ये शामिल हैं:

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

डिपेंडेंसी

Android Studio में लाइब्रेरी डिपेंडेंसी के लिए, Gradle डिपेंडेंसी के एलान और Maven डिपेंडेंसी का इस्तेमाल किया जाता है. ये डिपेंडेंसी, Maven कोऑर्डिनेट वाली, स्थानीय सोर्स और बाइनरी लाइब्रेरी के लिए होती हैं. ज़्यादा जानकारी के लिए, डिपेंडेंसी का एलान करना लेख पढ़ें.

IntelliJ से माइग्रेट करना

अगर आपके IntelliJ प्रोजेक्ट में Gradle बिल्ड सिस्टम का इस्तेमाल किया जाता है, तो अपने प्रोजेक्ट को सीधे Android Studio में इंपोर्ट किया जा सकता है. अगर आपके IntelliJ प्रोजेक्ट में Maven या किसी दूसरे बिल्ड सिस्टम का इस्तेमाल किया जाता है, तो Android Studio पर माइग्रेट करने से पहले, आपको उसे Gradle के साथ काम करने के लिए सेट अप करना होगा.

Gradle पर आधारित IntelliJ प्रोजेक्ट इंपोर्ट करना

अगर अपने IntelliJ प्रोजेक्ट के साथ पहले से Gradle का इस्तेमाल किया जा रहा है, तो Android Studio में उसे खोलने के लिए, यह तरीका अपनाएं:

  1. फ़ाइल > नया > प्रोजेक्ट इंपोर्ट करें पर क्लिक करें.
  2. IntelliJ प्रोजेक्ट की डायरेक्ट्री चुनें और ठीक है पर क्लिक करें. आपका प्रोजेक्ट, Android Studio में खुल जाएगा.

Gradle पर आधारित नहीं है, ऐसा IntelliJ प्रोजेक्ट इंपोर्ट करना

अगर आपके IntelliJ प्रोजेक्ट में Gradle बिल्ड सिस्टम का इस्तेमाल नहीं किया जा रहा है, तो अपने प्रोजेक्ट को Android Studio में इंपोर्ट करने के लिए, आपके पास दो विकल्प हैं. इनके बारे में यहां बताया गया है:

  • Android Studio में एक नया खाली प्रोजेक्ट बनाएं और अपने मौजूदा सोर्स कोड को नए प्रोजेक्ट से जुड़ी डायरेक्ट्री में कॉपी करें. ज़्यादा जानकारी के लिए, नया खाली प्रोजेक्ट बनाकर माइग्रेट करना सेक्शन देखें.
  • अपने प्रोजेक्ट के लिए, Gradle की एक नई बिल्ड फ़ाइल बनाएं. इसके बाद, प्रोजेक्ट और नई बिल्ड फ़ाइल को Android Studio में इंपोर्ट करें. ज़्यादा जानकारी के लिए, Gradle की कस्टम बिल्ड फ़ाइल बनाकर माइग्रेट करना सेक्शन देखें.

नया खाली प्रोजेक्ट बनाकर माइग्रेट करना

नया खाली प्रोजेक्ट बनाकर और सोर्स फ़ाइलों को नई डायरेक्ट्री में कॉपी करके, अपने प्रोजेक्ट को Android Studio में माइग्रेट करने के लिए, यह तरीका अपनाएं:

  1. Android Studio खोलें और फ़ाइल > नया > नया प्रोजेक्ट पर क्लिक करें.
  2. अपने ऐप्लिकेशन प्रोजेक्ट के लिए कोई नाम डालें और वह जगह तय करें जहां इसे बनाया जाना चाहिए. इसके बाद, आगे बढ़ें पर क्लिक करें.
  3. वे फ़ॉर्म फ़ैक्टर चुनें जिन पर आपका ऐप्लिकेशन चलता है. इसके बाद, आगे बढ़ें पर क्लिक करें.
  4. **कोई गतिविधि नहीं जोड़ें** पर क्लिक करें. इसके बाद, **खत्म करें** पर क्लिक करें.
  5. प्रोजेक्ट टूल विंडो में, ऐरो पर क्लिक करके व्यू मेन्यू खोलें. इसके बाद, प्रोजेक्ट व्यू को चुनकर, अपने नए Android Studio प्रोजेक्ट के संगठन को देखें और एक्सप्लोर करें. व्यू बदलने और Android Studio में प्रोजेक्ट के स्ट्रक्चर के बारे में ज़्यादा जानने के लिए, प्रोजेक्ट की फ़ाइलें लेख पढ़ें.
  6. अपने नए प्रोजेक्ट के लिए चुनी गई जगह पर जाएं और अपने पुराने प्रोजेक्ट की डायरेक्ट्री से कोड, यूनिट टेस्ट, इंस्ट्रूमेंटेशन टेस्ट, और संसाधनों को अपने नए प्रोजेक्ट के स्ट्रक्चर में सही जगहों पर ले जाएं.
  7. Android Studio में, फ़ाइल > प्रोजेक्ट का स्ट्रक्चर पर क्लिक करके, प्रोजेक्ट का स्ट्रक्चर डायलॉग खोलें. पक्का करें कि बाईं ओर मौजूद पैनल में, आपके ऐप्लिकेशन का मॉड्यूल चुना गया हो.
  8. अपने प्रोजेक्ट के लिए, प्रॉपर्टी टैब में ज़रूरी बदलाव करें. जैसे, minSdk या targetSdk में बदलाव करना.
  9. डिपेंडेंसी पर क्लिक करें और अपने प्रोजेक्ट में इस्तेमाल की जा रही सभी लाइब्रेरी को Gradle डिपेंडेंसी के तौर पर जोड़ें. नई डिपेंडेंसी जोड़ने के लिए, जोड़ें पर क्लिक करें. इसके बाद, वह डिपेंडेंसी टाइप चुनें जिसे आपको जोड़ना है और निर्देशों का पालन करें.
  10. अपने बदलावों को सेव करने के लिए, ठीक है पर क्लिक करें.
  11. अपने प्रोजेक्ट को बनाने की प्रोसेस को टेस्ट करने के लिए, बिल्ड > प्रोजेक्ट बनाएं पर क्लिक करें. साथ ही, अगर ज़रूरी हो, तो बाकी बची गड़बड़ियों को ठीक करें.

Gradle की कस्टम बिल्ड फ़ाइल बनाकर माइग्रेट करना

अपने मौजूदा सोर्स फ़ाइलों की ओर इशारा करने वाली, Gradle की नई बिल्ड फ़ाइल बनाकर, अपने प्रोजेक्ट को Android Studio में माइग्रेट करने के लिए, यह तरीका अपनाएं:

  1. शुरू करने से पहले, अपने प्रोजेक्ट की फ़ाइलों का बैकअप किसी दूसरी जगह पर लें. ऐसा इसलिए, क्योंकि माइग्रेशन की प्रोसेस के दौरान, आपके प्रोजेक्ट के कॉन्टेंट में बदलाव किया जाता है.
  2. अगर Groovy का इस्तेमाल किया जा रहा है, तो अपने प्रोजेक्ट की डायरेक्ट्री में build.gradle नाम की फ़ाइल बनाएं. वहीं, अगर Kotlin स्क्रिप्ट का इस्तेमाल किया जा रहा है, तो build.gradle.kts नाम की फ़ाइल बनाएं. इस फ़ाइल में, Gradle को आपका बिल्ड चलाने के लिए ज़रूरी सभी जानकारी होती है.

    डिफ़ॉल्ट रूप से, Android Studio को उम्मीद होती है कि आपका प्रोजेक्ट, पहली इमेज में दिखाए गए तरीके से व्यवस्थित हो.

    पहली इमेज. Android ऐप्लिकेशन मॉड्यूल के लिए डिफ़ॉल्ट प्रोजेक्ट स्ट्रक्चर.

    Groovy के लिए settings.gradle या Kotlin स्क्रिप्ट के लिए settings.gradle.kts में, उन रिपॉज़िटरी को सेट किया जाता है जिनका इस्तेमाल, क्रमशः pluginManagement और dependencyResolutionManagement ब्लॉक में प्लग इन और डिपेंडेंसी ढूंढने के लिए किया जाता है:

    शानदार

      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 की बिल्ड फ़ाइल को सेट अप और पसंद के मुताबिक बनाने के बारे में ज़्यादा जानने के लिए, अपना बिल्ड कॉन्फ़िगर करना लेख पढ़ें.

  3. इसके बाद, यह पता करें कि किन लाइब्रेरी प्रोजेक्ट का इस्तेमाल किया जा रहा है.

    Gradle के साथ, अब आपको इन लाइब्रेरी को सोर्स कोड प्रोजेक्ट के तौर पर जोड़ने की ज़रूरत नहीं है. इसके बजाय, इन्हें अपनी बिल्ड फ़ाइल के dependencies{} ब्लॉक में रेफ़र किया जा सकता है. इसके बाद, बिल्ड सिस्टम इन लाइब्रेरी को आपके लिए मैनेज करता है. इसमें लाइब्रेरी डाउनलोड करना, संसाधनों को मर्ज करना, और मेनिफ़ेस्ट एंट्री को मर्ज करना शामिल है. यहां दिए गए उदाहरण में, बिल्ड फ़ाइल के dependencies{} ब्लॉक में, AndroidX की कई लाइब्रेरी के लिए एलान स्टेटमेंट जोड़े गए हैं.

    शानदार

    ...
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
    
        // AndroidX libraries
        implementation 'androidx.core:core-ktx:1.18.0'
        implementation 'androidx.appcompat:appcompat:1.7.1'
        implementation 'androidx.cardview:cardview:1.0.0'
        implementation 'com.google.android.material:material:1.7.0'
        implementation 'androidx.gridlayout:gridlayout:1.1.0'
        implementation 'androidx.leanback:leanback:'
        implementation 'androidx.mediarouter:mediarouter:1.8.1'
        implementation 'androidx.palette:palette-ktx:1.0.0'
        implementation 'androidx.recyclerview:recyclerview:1.4.0'
        implementation 'androidx.annotation:annotation:1.10.0'
    
        // 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.18.0")
        implementation("androidx.appcompat:appcompat:1.7.1")
        implementation("androidx.cardview:cardview:1.0.0")
        implementation("com.google.android.material:material:1.7.0")
        implementation("androidx.gridlayout:gridlayout:1.1.0")
        implementation("androidx.leanback:leanback:")
        implementation("androidx.mediarouter:mediarouter:1.8.1")
        implementation("androidx.palette:palette-ktx:1.0.0")
        implementation("androidx.recyclerview:recyclerview:1.4.0")
        implementation("androidx.annotation:annotation:1.10.0")
    
        // Note: these libraries require that the Google repository has been declared
        // in the pluginManagement section of the top-level build.gradle.kts file.
    }
    अपनी लाइब्रेरी के लिए सही एलान स्टेटमेंट तय करने में मदद पाने के लिए, Google Maven रिपॉज़िटरी या Maven Central खोजें.
  4. build.gradle फ़ाइल सेव करें. इसके बाद, IntelliJ में प्रोजेक्ट बंद करें. अपने प्रोजेक्ट की डायरेक्ट्री पर जाएं और .idea डायरेक्ट्री के साथ-साथ, अपने प्रोजेक्ट में मौजूद सभी IML फ़ाइलें मिटाएं.
  5. Android Studio लॉन्च करें और फ़ाइल > नया > इंपोर्ट प्रोजेक्ट पर क्लिक करें.
  6. अपने प्रोजेक्ट की डायरेक्ट्री ढूंढें. इसके बाद, बनाई गई build.gradle या build.gradle.kts फ़ाइल चुनें और अपने प्रोजेक्ट को इंपोर्ट करने के लिए, ठीक है पर क्लिक करें.
  7. अपने प्रोजेक्ट को बनाकर, अपनी बिल्ड फ़ाइल को टेस्ट करने के लिए, बिल्ड > प्रोजेक्ट बनाएं पर क्लिक करें. साथ ही, मिली गड़बड़ियों को ठीक करें.

अगले चरण

अपने प्रोजेक्ट को Android Studio पर माइग्रेट करने के बाद, Gradle की मदद से बिल्ड करने और Android Studio में अपने ऐप्लिकेशन को चलाने के बारे में ज़्यादा जानने के लिए, अपना ऐप्लिकेशन बनाना और चलाना लेख पढ़ें.

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

वर्शन कंट्रोल कॉन्फ़िगर करना

Android Studio, Git, Mercurial, और Subversion जैसे कई वर्शन कंट्रोल सिस्टम के साथ काम करता है. प्लग्गिन की मदद से, वर्शन कंट्रोल के अन्य सिस्टम जोड़े जा सकते हैं.

अगर आपका ऐप्लिकेशन पहले से सोर्स कंट्रोल में है, तो आपको Android Studio में इसे चालू करना पड़ सकता है. वीसीएस मेन्यू में, वर्शन कंट्रोल इंटिग्रेशन चालू करें पर क्लिक करें और वर्शन कंट्रोल का सही सिस्टम चुनें.

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

  1. Android Studio के वीसीएस मेन्यू में, वर्शन कंट्रोल इंटिग्रेशन चालू करें पर क्लिक करें.
  2. मेन्यू में जाकर, वर्शन कंट्रोल का कोई ऐसा सिस्टम चुनें जिसे प्रोजेक्ट की रूट डायरेक्ट्री से जोड़ना है. इसके बाद, ठीक है पर क्लिक करें. अब वीसीएस मेन्यू में, चुने गए सिस्टम के आधार पर, वर्शन कंट्रोल के कई विकल्प दिखते हैं.

ध्यान दें: वर्शन कंट्रोल को सेट अप और उसमें बदलाव करने के लिए, फ़ाइल > सेटिंग > वर्शन कंट्रोल मेन्यू विकल्प का इस्तेमाल भी किया जा सकता है.

वर्शन कंट्रोल के साथ काम करने के बारे में ज़्यादा जानने के लिए, IntelliJ का वर्शन कंट्रोल रेफ़रंस देखें.

ऐप्लिकेशन साइनिंग

अगर पहले डीबग सर्टिफ़िकेट का इस्तेमाल किया गया था, तो इंपोर्ट की प्रोसेस के दौरान, इसका पता चल सकता है. ऐसे में, Android Studio उस सर्टिफ़िकेट को रेफ़र करता रहता है. इसके अलावा, डीबग कॉन्फ़िगरेशन में, Android Studio से जनरेट किए गए डीबग कीस्टोर का इस्तेमाल किया जाता है. इसमें, $HOME/.android/debug.keystore में मौजूद, जाने-पहचाने पासवर्ड और डिफ़ॉल्ट पासकोड का इस्तेमाल किया जाता है. Android Studio से अपने प्रोजेक्ट को चलाने या डीबग करने पर, डीबग बिल्ड टाइप को इस डीबग कॉन्फ़िगरेशन का इस्तेमाल करने के लिए, अपने-आप सेट किया जाता है.

इसी तरह, इंपोर्ट की प्रोसेस के दौरान, रिलीज़ के मौजूदा सर्टिफ़िकेट का पता चल सकता है. अगर पहले रिलीज़ का कोई सर्टिफ़िकेट तय नहीं किया गया था, तो रिलीज़ साइनिंग कॉन्फ़िगरेशन को build.gradle या build.gradle.kts फ़ाइल में जोड़ें. इसके अलावा, साइन किया गया एपीके जनरेट करने का विज़र्ड खोलने के लिए, बिल्ड > साइन किया गया एपीके जनरेट करें मेन्यू विकल्प का इस्तेमाल करें. अपने ऐप्लिकेशन पर हस्ताक्षर करने के बारे में ज़्यादा जानने के लिए, अपने ऐप्लिकेशन पर हस्ताक्षर करना लेख पढ़ें.

Android Studio के लिए, हीप साइज़ की ज़्यादा से ज़्यादा सीमा अडजस्ट करना

डिफ़ॉल्ट रूप से, Android Studio के लिए हीप साइज़ की ज़्यादा से ज़्यादा सीमा 1280 एमबी होती है. बड़े प्रोजेक्ट पर काम करने या आपके सिस्टम में ज़्यादा रैम होने पर, हीप साइज़ की ज़्यादा से ज़्यादा सीमा बढ़ाकर परफ़ॉर्मेंस को बेहतर बनाया जा सकता है.

सॉफ़्टवेयर के अपडेट

Android Studio, Gradle प्लग इन, बिल्ड टूल, और एसडीके टूल से अलग अपडेट होता है. यह तय किया जा सकता है कि Android Studio के साथ किन वर्शन का इस्तेमाल करना है.

डिफ़ॉल्ट रूप से, Android Studio का नया स्टेबल वर्शन रिलीज़ होने पर, यह अपने-आप अपडेट हो जाता है. हालांकि, ज़्यादा बार अपडेट करने और कैनरी या आरसी वर्शन पाने का विकल्प भी चुना जा सकता है.

Android Studio को अपडेट करने और कैनरी और आरसी वर्शन इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, अपडेट के बारे में जानकारी लेख पढ़ें.