Android Gradle प्लग इन 8.11 के रिलीज़ नोट

JCenter रिपॉज़िटरी, 31 मार्च, 2021 को रीड-ओनली मोड में बदल गई थी. ज़्यादा जानकारी के लिए, JCenter की सेवा से जुड़ा अपडेट देखें.

Android Studio का बिल्ड सिस्टम, Gradle पर आधारित है. Android Gradle प्लग-इन, Android ऐप्लिकेशन बनाने से जुड़ी कई सुविधाएं जोड़ता है. आम तौर पर, Android Gradle प्लग इन (एजीपी) को Android Studio के साथ-साथ अपडेट किया जाता है. हालांकि, प्लग इन (और Gradle सिस्टम के बाकी हिस्से) को Android Studio से अलग चलाया जा सकता है और इसे अलग से अपडेट किया जा सकता है.

इस पेज पर, Gradle टूल को अप-टू-डेट रखने का तरीका बताया गया है. साथ ही, हाल ही के अपडेट के बारे में जानकारी दी गई है. Android Gradle प्लग-इन के पिछले वर्शन के रिलीज़ नोट देखने के लिए, पिछले रिलीज़ नोट देखें.

Android Gradle प्लगिन के इस वर्शन में क्या ठीक किया गया है, यह देखने के लिए बंद की गई समस्याएं देखें.

Android Gradle प्लग इन में होने वाले बड़े बदलावों के बारे में खास जानकारी पाने के लिए, Android Gradle प्लग इन का रोडमैप देखें.

Gradle की मदद से, Android बिल्ड को कॉन्फ़िगर करने के तरीके के बारे में जानने के लिए, ये पेज देखें:

Gradle बिल्ड सिस्टम के बारे में ज़्यादा जानने के लिए, Gradle के लिए उपयोगकर्ता गाइड देखें.

Android Gradle प्लग इन को अपडेट करना

Android Studio को अपडेट करने पर, आपको Android Gradle प्लगिन को अपने-आप अपडेट करने का अनुरोध मिल सकता है. ऐसा तब होता है, जब प्लगिन का नया वर्शन उपलब्ध होता है. आपके पास अपडेट स्वीकार करने या अपने प्रोजेक्ट की बिल्ड की ज़रूरी शर्तों के आधार पर, मैन्युअल तरीके से कोई वर्शन तय करने का विकल्प होता है.

Android Studio में, फ़ाइल > प्रोजेक्ट स्ट्रक्चर > प्रोजेक्ट मेन्यू में जाकर या टॉप-लेवल की build.gradle.kts फ़ाइल में जाकर, प्लगिन का वर्शन तय किया जा सकता है. प्लगिन का वर्शन, Android Studio के उस प्रोजेक्ट में बनाए गए सभी मॉड्यूल पर लागू होता है. यहां दिए गए उदाहरण में, build.gradle.kts फ़ाइल से प्लगिन को वर्शन 8.11.0 पर सेट करने का तरीका बताया गया है:

Kotlin

plugins {
    id("com.android.application") version "8.11.0" apply false
    id("com.android.library") version "8.11.0" apply false
    id("org.jetbrains.kotlin.android") version "2.1.20" apply false
}

ग्रूवी

plugins {
    id 'com.android.application' version '8.11.0' apply false
    id 'com.android.library' version '8.11.0' apply false
    id 'org.jetbrains.kotlin.android' version '2.1.20' apply false
}

चेतावनी: आपको वर्शन नंबर में डाइनैमिक डिपेंडेंसी का इस्तेमाल नहीं करना चाहिए. जैसे, 'com.android.tools.build:gradle:8.11.+'. इस सुविधा का इस्तेमाल करने से, वर्शन में अचानक अपडेट हो सकते हैं. साथ ही, वर्शन में अंतर को ठीक करने में मुश्किल आ सकती है.

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

Gradle को अपडेट करना

Android Studio को अपडेट करने पर, आपको Gradle को भी उपलब्ध नए वर्शन में अपडेट करने का अनुरोध मिल सकता है. आपके पास अपडेट स्वीकार करने का विकल्प होता है. इसके अलावा, प्रोजेक्ट की बिल्ड से जुड़ी ज़रूरी शर्तों के आधार पर, मैन्युअल तरीके से कोई वर्शन तय किया जा सकता है.

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

प्लगिन का वर्शनGradle का ज़रूरी कम से कम वर्शन
8.118.13
8.108.11.1
8.98.11.1
8.88.10.2
8.78.9
8.68.7
8.58.7
8.48.6
8.38.4
8.28.2
8.18.0
8.08.0

पुराने संस्करण

प्लगिन का वर्शनGradle का ज़रूरी वर्शन
7.4सऊदी रियाल
7.37.4
7.27.3.3
7.17.2
7.07.0
4.2.0+6.7.1
4.1.0+6.5+
4.0.0+6.1.1+
3.6.0 - 3.6.45.6.4+
3.5.0 - 3.5.45.4.1+
3.4.0 - 3.4.35.1.1+
3.3.0 - 3.3.34.10.1+
3.2.0 - 3.2.14.6+
3.1.0+4.4+
3.0.0 या इसके बाद के वर्शन4.1+
2.3.0+3.3+
2.1.3 - 2.2.32.14.1 - 3.5
2.0.0 - 2.1.22.10 - 2.13
1.5.02.2.1 - 2.13
1.2.0 - 1.3.12.2.1 - 2.9
1.0.0 - 1.1.32.2.1 - 2.3

Android Studio में, फ़ाइल > प्रोजेक्ट स्ट्रक्चर > प्रोजेक्ट मेन्यू में जाकर, Gradle का वर्शन सेट किया जा सकता है. इसके अलावा, कमांड लाइन का इस्तेमाल करके भी Gradle का वर्शन अपडेट किया जा सकता है. Gradle Wrapper कमांड लाइन टूल का इस्तेमाल करना सबसे अच्छा तरीका है. यह टूल, gradlew स्क्रिप्ट को अपडेट करता है. यहां दिए गए उदाहरण में, Gradle Wrapper का इस्तेमाल करके Gradle के वर्शन को 8.13 पर सेट किया गया है. ध्यान दें कि Gradle और Gradle Wrapper, दोनों को अपग्रेड करने के लिए, आपको यह निर्देश दो बार चलाना होगा. ज़्यादा जानकारी के लिए, Gradle Wrapper को अपग्रेड करना लेख पढ़ें.

gradle wrapper --gradle-version 8.13

हालांकि, कुछ मामलों में ऐसा नहीं हो सकता. उदाहरण के लिए, अगर आपने अभी-अभी AGP अपडेट किया है और वह Gradle के मौजूदा वर्शन के साथ काम नहीं करता है. ऐसे में, आपको gradle/wrapper/gradle-wrapper.properties फ़ाइल में Gradle डिस्ट्रिब्यूशन के रेफ़रंस में बदलाव करना होगा. नीचे दिए गए उदाहरण में, gradle-wrapper.properties फ़ाइल में Gradle का वर्शन 8.13 पर सेट किया गया है.

...
distributionUrl = https\://services.gradle.org/distributions/gradle-8.13-bin.zip
...

Android Gradle प्लग इन और Android Studio के साथ काम करने की सुविधा

Android Studio का बिल्ड सिस्टम, Gradle पर आधारित है. साथ ही, Android Gradle प्लगइन (AGP) कई ऐसी सुविधाएं जोड़ता है जो Android ऐप्लिकेशन बनाने के लिए खास तौर पर डिज़ाइन की गई हैं. यहां दी गई टेबल में बताया गया है कि Android Studio के हर वर्शन के लिए, AGP का कौनसा वर्शन ज़रूरी है.

Android Studio का वर्शन AGP का ज़रूरी वर्शन
Narwhal Feature Drop | 2025.1.2 4.0-8.12
Narwhal | 2025.1.1 3.2-8.11
Meerkat की नई सुविधाओं वाला सॉफ़्टवेयर अपडेट | 2024.3.2 3.2-8.10
Meerkat | 2024.3.1 3.2-8.9
लेडीबग फ़ीचर ड्रॉप | 2024.2.2 3.2-8.8
Ladybug | 2024.2.1 3.2-8.7
Koala Feature Drop | 2024.1.2 3.2-8.6
Koala | 2024.1.1 3.2-8.5
Jellyfish | 2023.3.1 3.2-8.4
इगुआना | 2023.2.1 3.2-8.3
Hedgehog | 2023.1.1 3.2-8.2
Giraffe | 2022.3.1 3.2-8.1
Flamingo | 2022.2.1 3.2-8.0

पुराने संस्करण

Android Studio का वर्शन AGP का ज़रूरी वर्शन
Electric Eel | 2022.1.1 3.2-7.4
Dolphin | 2021.3.1 3.2-7.3
Chipmunk | 2021.2.1 3.2-7.2
Bumblebee | 2021.1.1 3.2-7.1
Arctic Fox | 2020.3.1 3.1-7.0

Android Gradle प्लगइन में नया क्या है, इस बारे में जानने के लिए Android Gradle प्लगइन के रिलीज़ नोट देखें.

Android के एपीआई लेवल के लिए टूल के कम से कम वर्शन

Android Studio और AGP के कुछ ऐसे वर्शन हैं जो किसी खास एपीआई लेवल के साथ काम करते हैं. अपने प्रोजेक्ट के targetSdk या compileSdk के लिए ज़रूरी Android Studio या AGP के पुराने वर्शन इस्तेमाल करने से, समस्याएं आ सकती हैं. हमारा सुझाव है कि Android ओएस के प्रीव्यू वर्शन को टारगेट करने वाले प्रोजेक्ट पर काम करने के लिए, Android Studio और AGP के नए प्रीव्यू वर्शन का इस्तेमाल करें. Android Studio के स्टेबल वर्शन के साथ-साथ, इसके प्रीव्यू वर्शन भी इंस्टॉल किए जा सकते हैं.

Android Studio और AGP के कम से कम ये वर्शन होने चाहिए:

API स्तर Android Studio का कम से कम वर्शन एजीपी का कम से कम वर्शन
36.0 मीरकैट | 2024.3.1 पैच 1 8.9.1
35 Koala Feature Drop | 2024.2.1 8.6.0
34 Hedgehog | 2023.1.1 8.1.1
33 Flamingo | 2022.2.1 7.2

वर्शनिंग में हुए बदलाव (नवंबर 2020)

हम Android Gradle प्लगइन (एजीपी) के वर्शन नंबर को अपडेट कर रहे हैं, ताकि यह Gradle बिल्ड टूल से ज़्यादा मेल खाए.

यहां मुख्य बदलावों के बारे में बताया गया है:

  • AGP अब सिमेंटिक वर्शनिंग का इस्तेमाल करेगा. साथ ही, बड़े बदलावों को मुख्य रिलीज़ के लिए टारगेट किया जाएगा.

  • हर साल AGP का एक मेजर वर्शन रिलीज़ किया जाएगा. यह Gradle के मेजर वर्शन के साथ अलाइन होगा.

  • AGP 4.2 के बाद रिलीज़ होने वाला वर्शन 7.0 होगा. इसके लिए, Gradle को 7.x वर्शन पर अपग्रेड करना होगा. AGP के हर मेजर वर्शन के लिए, Gradle टूल के अंडरलाइंग मेजर वर्शन को अपग्रेड करना ज़रूरी होगा.

  • एपीआई को बंद करने से करीब एक साल पहले इसकी सूचना दी जाएगी. साथ ही, एपीआई की जगह इस्तेमाल की जा सकने वाली सुविधा को भी उपलब्ध करा दिया जाएगा. पाबंदी वाले एपीआई को अगले बड़े अपडेट के दौरान, करीब एक साल बाद हटा दिया जाएगा.

इनके साथ काम करता है

Android Gradle प्लगिन 8.11, ज़्यादा से ज़्यादा एपीआई लेवल 36 के साथ काम करता है. यहां अन्य ज़रूरी जानकारी दी गई है:

कम से कम वर्शन डिफ़ॉल्ट वर्शन नोट
Gradle 8.13 8.13 ज़्यादा जानने के लिए, Gradle को अपडेट करना लेख पढ़ें.
एसडीके बिल्ड टूल 35.0.0 35.0.0 एसडीके बिल्ड टूल इंस्टॉल करें या कॉन्फ़िगर करें.
एनडीके लागू नहीं 27.0.12077973 NDK का कोई दूसरा वर्शन इंस्टॉल करें या कॉन्फ़िगर करें.
JDK 17 17 ज़्यादा जानने के लिए, JDK वर्शन सेट करना लेख पढ़ें.

ठीक की गई समस्याएं

Android Gradle प्लग इन 8.11.0

ठीक की गई समस्याएं
Android Gradle प्लग इन
आइसोलेट किया गया प्रोजेक्ट: DeclarativeSchemaModel के सीरियललाइज़ेशन में गड़बड़ी हुई
अनुरोध: zipAlignEnabled के इस्तेमाल पर रोक लगाने के बारे में बताएं. यह भी बताएं कि इसके इस्तेमाल पर रोक क्यों लगाई गई है और इसके बजाय किस विकल्प का इस्तेमाल किया जा सकता है
[AGP 8.9.0+] BuiltinKotlinCompilation को सभी Kotlin कंपाइलर प्लगिन के लिए उपलब्ध कराया गया है
AGP 8.11 बनाते समय, Kotlin डिपेंडेंसी को 2.1.20 वर्शन पर अपडेट करें
Gradle डिस्ट्रिब्यूशन को अपडेट करते समय, com.android.internal.version-check को लागू न करें
proguard फ़ाइल मौजूद न होने पर, बिल्ड नहीं हो पाता
Dexer (D8)
AutoClosable की डेसुगरिंग की वजह से, Android Studio में AGP बिल्ड काम नहीं करते
Lint
Lint rule BuildListAdds does not detect usage of operator fun plusAssign (+=) in buildList
UseSdkSuppress फ़्लैग का इस्तेमाल करके, टेस्ट हेल्पर कोड पर गलत पहचान किए जाने की समस्या को ठीक करना
सदस्यता और एक्सटेंशन के बीच संभावित टकराव के बारे में चेतावनी देना
अगर एक्सटेंशन फ़ंक्शन रिसीवर में नल वैल्यू हो सकती है, तो लिंट की समस्या `MemberExtensionConflict` के लिए फ़ॉल्स पॉज़िटिव
`WrongGradleMedthod` inspection false positive
डेटा क्लास के सिंथेटिक मेंबर कॉल के लिए, SyntheticAccessor का फ़ॉल्स पॉज़िटिव
लेबल किए जा सकने वाले एक्सप्रेशन पर रिपोर्ट की गई समस्या के लिए, TestMode.SUPPRESSIBLE गड़बड़ी
AGP 8.11.0-alpha03 से शुरू होने वाली, MemberExtensionConflict से जुड़ी नई लिंट समस्याएं - इन्हें कैसे हल करें?
'libs.versions.toml' फ़ाइल में लिंट की जांच करने पर, ऐसे एजीपी वर्शन पर अपग्रेड करने का सुझाव मिलता है जो काम नहीं करता.
Shrinker (R8)
AGP 8.9.0 पर अपडेट करने के बाद, साइन किया गया AAB जनरेट नहीं किया जा सका
JavaFuzzer कोड को प्रोसेस करते समय, R8 min-api 24 के साथ क्रैश हो जाता है

Android Gradle प्लग इन 8.11.1

ठीक की गई समस्याएं