Gradle के लिए Android प्लग इन, रिविज़न 1.5.0 (नवंबर 2015)
- डिपेंडेंसी:
|
कम से कम वर्शन |
डिफ़ॉल्ट वर्शन |
नोट |
Gradle |
2.2.1 |
2.2.1 |
ज़्यादा जानने के लिए, Gradle को अपडेट करना लेख पढ़ें. |
SDK टूल के लिए बिल्ड टूल |
21.1.1 |
21.1.1 |
SDK Build Tools इंस्टॉल या कॉन्फ़िगर करें. |
- सामान्य जानकारी:
-
- Gradle के लिए Android प्लग इन में डेटा बाइंडिंग प्लग इन को इंटिग्रेट किया गया. इसे चालू करने के लिए, प्लग इन का इस्तेमाल करने वाली हर प्रोजेक्ट
build.gradle
फ़ाइल में यह कोड जोड़ें:
android {
dataBinding {
enabled = true
}
}
android {
dataBinding {
enabled = true
}
}
- तीसरे पक्ष के प्लग इन को
.dex
फ़ाइलों में बदले जाने से पहले, .class
फ़ाइलों में बदलाव करने की अनुमति देने के लिए, नया ट्रांसफ़ॉर्म एपीआई जोड़ा गया है. Transform API की मदद से, कस्टम क्लास में बदलाव करना आसान हो जाता है. साथ ही, यह आपको बदलाव करने के लिए ज़्यादा विकल्प भी देता है. किसी ट्रांसफ़ॉर्म को किसी बिल्ड में डालने के लिए, Transform
इंटरफ़ेस में से किसी एक को लागू करने वाली नई क्लास बनाएं और उसे android.registerTransform(theTransform)
या android.registerTransform(theTransform, dependencies)
के साथ रजिस्टर करें. टास्क को एक-दूसरे से लिंक करने की ज़रूरत नहीं है. Transform API के बारे में इन बातों का ध्यान रखें:
- ट्रांसफ़ॉर्म, इनमें से एक या उससे ज़्यादा पर लागू हो सकता है: मौजूदा प्रोजेक्ट, सब-प्रोजेक्ट, और बाहरी लाइब्रेरी.
- ट्रांसफ़ॉर्म को दुनिया भर में रजिस्टर करना ज़रूरी है, ताकि वे सभी वैरिएंट पर लागू हो सकें.
- Java Code Coverage Library (JaCoCo), ProGuard, और MultiDex के ज़रिए, अब अंदरूनी कोड प्रोसेसिंग के लिए Transform API का इस्तेमाल किया जाता है. हालांकि, Java Android Compiler Kit (Jack) इस एपीआई का इस्तेमाल नहीं करता: सिर्फ़
javac/dx
कोड पाथ इसका इस्तेमाल करता है.
- Gradle, ट्रांसफ़ॉर्मेशन को इस क्रम में लागू करता है: JaCoCo, तीसरे पक्ष के प्लगिन, ProGuard.
तीसरे पक्ष के प्लग इन के लिए ट्रांसफ़ॉर्मेशन लागू करने का क्रम, उसी क्रम से मेल खाता है जिसमें तीसरे पक्ष के प्लग इन, ट्रांसफ़ॉर्मेशन जोड़ते हैं. तीसरे पक्ष के प्लग इन डेवलपर, एपीआई की मदद से ट्रांसफ़ॉर्मेशन लागू करने के क्रम को कंट्रोल नहीं कर सकते.
ApplicationVariant
क्लास से dex
गटर को हटा दिया गया है.
अब वैरिएंट एपीआई के ज़रिए Dex
टास्क को ऐक्सेस नहीं किया जा सकता, क्योंकि अब इसे ट्रांसफ़ॉर्म की मदद से पूरा किया जाता है. फ़िलहाल,
डीईएक्स प्रोसेस को कंट्रोल करने के लिए कोई दूसरा विकल्प उपलब्ध नहीं है.
- एसेट के लिए इंक्रीमेंटल डेटा अपलोड करने की सुविधा को ठीक किया गया.
- जांच प्रोजेक्ट के लिए MultiDex को उपलब्ध कराने के साथ-साथ, इसकी सुविधा को बेहतर बनाया गया है. साथ ही, अब जांच में
com.android.support:multidex-instrumentation
डिपेंडेंसी अपने-आप जुड़ जाती है.
- Gradle बिल्ड को सही तरीके से फ़ेल करने और गड़बड़ी की वजह की जानकारी देने की सुविधा जोड़ी गई है. ऐसा तब होता है, जब Gradle बिल्ड में असाइनमेंट एक साथ नहीं किए जाते और वर्कर्स प्रोसेस में गड़बड़ी होती है.
- ऐसे वैरिएंट में किसी खास ऐप्लिकेशन बाइनरी इंटरफ़ेस (एबीआई) को कॉन्फ़िगर करने की सुविधा जोड़ी गई है जिनमें कई एबीआई होते हैं.
- जांच को इंस्टॉल या चलाते समय,
ANDROID_SERIAL
एनवायरमेंट वैरिएबल के लिए, डिवाइस के सीरियल नंबर की कॉमा लगाकर अलग की गई सूची के साथ काम करने की सुविधा जोड़ी गई है.
- Android 5.0 (एपीआई लेवल 20) और इसके बाद के वर्शन पर चलने वाले डिवाइसों पर, ऐप्लिकेशन इंस्टॉल न होने की समस्या को ठीक किया गया है. ऐसा तब होता है, जब APK के नाम में स्पेस हो.
- Android ऐसेट पैकेजिंग टूल (AAPT) से जुड़ी गड़बड़ी के आउटपुट से जुड़ी कई समस्याएं ठीक की गईं.
- इंक्रीमेंटल बिल्ड को तेज़ी से बनाने के लिए, JaCoCo इंक्रीमेंटल इंस्ट्रूमेंटेशन की सुविधा जोड़ी गई है. Gradle के लिए Android प्लग इन, अब सीधे JaCoCo इंस्ट्रूमेंटर को कॉल करता है. JaCoCo इंस्ट्रूमेंटर के नए वर्शन का इस्तेमाल करने के लिए, आपको इसे बिल्ड स्क्रिप्ट की डिपेंडेंसी के तौर पर जोड़ना होगा.
- JaCoCo के साथ काम करने की सुविधा को ठीक किया गया है, ताकि यह उन फ़ाइलों को अनदेखा कर सके जो क्लास नहीं हैं.
- पुराने सिस्टम के साथ काम करने के लिए, बिल्ड के समय PNG जनरेट करने के लिए वेक्टर ड्रॉबल की सुविधा जोड़ी गई.
Gradle के लिए Android प्लग इन, ऐसे हर वेक्टर ड्रॉबल के लिए PNG जनरेट करता है जो किसी ऐसी संसाधन डायरेक्ट्री में मिलता है जिसमें एपीआई वर्शन की जानकारी नहीं दी गई है या ऐप्लिकेशन मेनिफ़ेस्ट में
<uses-sdk>
एलिमेंट में android:minSdkVersion
एट्रिब्यूट की वैल्यू 20 या उससे कम दी गई है. build.gradle
फ़ाइल के defaultConfig
या
productFlavor
सेक्शन में generatedDensities
प्रॉपर्टी का इस्तेमाल करके, PNG डेंसिटी सेट की जा सकती है.
- मॉक किए जा सकने वाले
android.jar
को शेयर करने की सुविधा जोड़ी गई है. प्लग इन इसे सिर्फ़ एक बार जनरेट करता है और यूनिट टेस्टिंग के लिए इस्तेमाल करता है. app
और
lib
जैसे कई मॉड्यूल, अब इसे शेयर करते हैं. इसे फिर से जनरेट करने के लिए, $rootDir/build
को मिटाएं.
- APK को पैकेज करने के दौरान, Java रिसॉर्स की प्रोसेसिंग करने के बजाय, अब उसे कोड को बदलने से पहले प्रोसेस किया जाएगा. इस बदलाव की वजह से, पैकेज को गुप्त करने के बाद, Java संसाधनों को अडैप्ट करने के लिए, गुप्त करने के टास्क को एक मौका मिलता है.
- एक्सपेरिमेंट के तौर पर उपलब्ध लाइब्रेरी प्लग इन में, Java नेटिव इंटरफ़ेस (JNI) कोड इस्तेमाल करने से जुड़ी समस्या ठीक की गई.
- एक्सपेरिमेंटल लाइब्रेरी प्लग इन में, प्लैटफ़ॉर्म वर्शन को
android:compileSdkVersion
एट्रिब्यूट से अलग सेट करने की सुविधा जोड़ी गई है.
इस पेज पर मौजूद कॉन्टेंट और कोड सैंपल कॉन्टेंट के लाइसेंस में बताए गए लाइसेंस के हिसाब से हैं. Java और OpenJDK, Oracle और/या इससे जुड़ी हुई कंपनियों के ट्रेडमार्क या रजिस्टर किए हुए ट्रेडमार्क हैं.
आखिरी बार 2025-02-28 (UTC) को अपडेट किया गया.
[null,null,["आखिरी बार 2025-02-28 (UTC) को अपडेट किया गया."],[],[]]