Android Gradle प्लग इन 7.2.0 (मई 2022)

'Android Gradle प्लग इन 7.2.0' एक मुख्य रिलीज़ है, जिसमें कई तरह के नई सुविधाओं और सुधारों के बारे में है.

7.2.2 (अगस्त 2022)

यह मामूली अपडेट, Android Studio Chipmunk के रिलीज़ होने से जुड़ा है पैच 2 और इसमें ये गड़बड़ियां ठीक की गई हैं:

  • समस्या #232438924: ASM API के साथ इस्तेमाल किए जाने पर, AndroidGradle समीक्षा के वर्शन 7.2 ब्रेक, ट्रांसफ़ॉर्म एपीआई को ब्रेक करता है
  • समस्या #231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScript आखिरीAccessors - Shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocation
7.2.1 (मई 2022)

यह मामूली अपडेट, Android Studio Chipmunk के रिलीज़ होने से जुड़ा है पैच 1 और इसमें ये गड़बड़ियां ठीक की गई हैं:

  • समस्या #230361284: bundletool, बेसलाइन प्रोफ़ाइल को सही तरीके से पैकेज नहीं करता है

इस रिलीज़ में शामिल अन्य गड़बड़ियां ठीक करने के बारे में जानने के लिए, यहां जाएं: Android Studio चिपमंक पैच 1 प्रॉडक्ट की जानकारी.

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

कम से कम वर्शन डिफ़ॉल्ट वर्शन नोट
ग्रेडल 7.3.3 7.3.3 ज़्यादा जानने के लिए, Gredle को अपडेट करना देखें.
SDK टूल बनाने वाले टूल 30.0.3 30.0.3 SDK बिल्ड टूल इंस्टॉल करें या कॉन्फ़िगर करें.
एनडीके लागू नहीं 21.4.7075529 एनडीके के किसी दूसरे वर्शन को इंस्टॉल करें या कॉन्फ़िगर करें.
जेडीके 11 11 ज़्यादा जानने के लिए, JDK वर्शन सेट करना देखें.

Jetifier चेतावनी और Build विश्लेषक में जांच करें

अगर आपके प्रोजेक्ट की gradle.properties फ़ाइल में शामिल हैं android.enableJetifier=true. इस फ़्लैग को पेश किया गया था Android Studio के पिछले वर्शन में किया गया था, ताकि उन लाइब्रेरी के लिए AndroidX चालू किया जा सके जो AndroidX का मूल रूप से समर्थन करते हैं. हालांकि, लाइब्रेरी का नेटवर्क, स्थानीय तौर पर AndroidX का इस्तेमाल करते हैं और हो सकता है कि Jetifier फ़्लैग की अब ज़रूरत न हो आपका प्रोजेक्ट. इसके अलावा, फ़्लैग की वजह से बिल्ड की परफ़ॉर्मेंस धीमी हो सकती है. अगर आपने अगर आपको यह चेतावनी दिखती है, तो बिल्ड ऐनालाइज़र में जांच करके पुष्टि की जा सकती है कि क्या फ़्लैग को हटाया जा सकता है.

टेस्ट फ़िक्स्चर के लिए सहायता

Android Studio के चिपमंक बीटा 1 वर्शन की शुरुआत में ही, Android Studio में दोनों वर्शन काम कर सकते हैं Android और Java की जांच करने के तरीके. टेस्टर का इस्तेमाल करने के बारे में Gradle की गाइड देखें{:.external} देखें.

अपने Android लाइब्रेरी मॉड्यूल में टेस्ट फ़िक्सचर चालू करने के लिए, इन्हें जोड़ें आपकी लाइब्रेरी-लेवल की build.gradle फ़ाइल:

android {
  testFixtures {
    enable true
    // enable testFixtures's android resources (disabled by default)
    // androidResources true
  }
}

डिफ़ॉल्ट रूप से, अपनी लाइब्रेरी को पब्लिश करने पर, टेस्ट से जुड़ी सुविधाओं वाली AAR को भी पब्लिश किया जाता है. मुख्य लाइब्रेरी है. Gradle मॉड्यूल मेटाडेटा फ़ाइल में Gradle, ताकि अनुरोध करते समय सही आर्टफ़ैक्ट का इस्तेमाल किया जा सके testFixtures कॉम्पोनेंट.

रिलीज़ के वैरिएंट में, लाइब्रेरी के टेस्ट फ़िक्सचर एएआर को पब्लिश करने की सुविधा बंद करने के लिए, अपनी लाइब्रेरी लेवल की build.gradle फ़ाइल में यह जोड़ें:

afterEvaluate {
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}

किसी पब्लिश की गई Android लाइब्रेरी के टेस्ट फ़िक्स एएआर का इस्तेमाल करने के लिए, इनका इस्तेमाल किया जा सकता है Gradle का हेल्पर तरीका testFixtures().

dependencies {
  testImplementation testFixtures('com.example.company:publishedLib:1.0')
}

डिफ़ॉल्ट रूप से, लिंट जांच के नतीजों के सोर्स का विश्लेषण करेगा. कॉन्फ़िगर किया जा सकता है लिंट को इस प्रकार अनदेखा करें:

android {
  lint {
    ignoreTestFixturesSources true
  }
}

डुप्लीकेट कॉन्टेंट रूट इस्तेमाल नहीं किए जा सकते

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