स्टैंडअलोन Jetifier टूल, सपोर्ट-लाइब्रेरी पर निर्भर लाइब्रेरी को के बजाय, मिलते-जुलते AndroidX पैकेज पर भरोसा करते हैं. यह टूल आपको बंडल किए गए 'Android Gradle प्लग इन' का इस्तेमाल करने के बजाय, अलग-अलग लाइब्रेरी Android Studio से कनेक्ट किया है.
Jetifier इंस्टॉल करें
Jetifier इंस्टॉल करने के लिए, zip डाउनलोड करें फ़ाइल और उसे एक्सट्रैक्ट करें. आपके डिवाइस में Java वर्शन 1.8 या उसके बाद वाला वर्शन इंस्टॉल होना चाहिए.
इस्तेमाल
लाइब्रेरी प्रोसेस करने के लिए, मौजूदा लाइब्रेरी का पाथ पास करें और पाथ आउटपुट फ़ाइल होनी चाहिए जिसे टूल को बनाना चाहिए. Jetifier, JAR, AAR, और ZIP के साथ काम करता है फ़ाइलें, जिनमें नेस्ट किए गए संग्रह शामिल हैं.
./jetifier-standalone -i <source-library> -o <output-library>
विकल्प
नीचे दी गई टेबल में, Jetifier टूल कमांड के लिए उपलब्ध विकल्प दिए गए हैं:
विकल्प | ज़रूरी है? | ब्यौरा |
---|---|---|
-i , --input <path> |
हां | इनपुट लाइब्रेरी (JAR, AAR या ZIP) का पाथ. |
-o , --output <path>
|
हां | आउटपुट फ़ाइल का पाथ. अगर फ़ाइल पहले से मौजूद है, तो Jetifier इसे ओवरराइट कर देता है. |
-c , --config <path> |
नहीं | वैकल्पिक कस्टम कॉन्फ़िगरेशन फ़ाइल का पाथ. |
-l , --log <level>
|
नहीं | लॉगिंग लेवल. इन वैल्यू का इस्तेमाल करने की अनुमति है:
|
-r |
नहीं | रिवर्स मोड में काम करता है ("डी-जेटिफ़िकेशन"). |
-rebuildTopOfTree ,--rebuildTopOfTree |
नहीं | इसके अनुसार Maven डिस्ट्रिब्यूशन का ZIP फिर से बनाएं:
जनरेट की गई POM फ़ाइल. अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है अगर सेट हो, तो फिर से लिखी गई सभी लाइब्रेरी उन्हें सपोर्ट लाइब्रेरी का हिस्सा माना जाता है. जेटिफ़िकेशन के लिए आवश्यक नहीं है. |
-s , --strict
|
नहीं | नियम मौजूद न होने पर फ़ॉलबैक न करें; थ्रॉ एरर आज़माएं. |
-stripSignatures ,--stripSignatures
|
नहीं | गड़बड़ी की सूचना न दें हस्ताक्षर की गई लाइब्रेरी को खोजना; हस्ताक्षर वाली फ़ाइलों को हटा दें आज़माएं. |
-t , -timestamp <arg>
|
नहीं | टाइमस्टैंप के बारे में यह नीति, संग्रहित की गई एंट्री को उनके बदले गए समय के तौर पर सेव किया जाएगा. वैल्यू: Keepपीछे (डिफ़ॉल्ट) Epoch या Now. |
उदाहरण
नीचे दिया गया उदाहरण इसकी लाइब्रेरी libraryToProcess.aar
पर उपयोगिता चलाता है
मौजूदा डायरेक्ट्री और आउटपुट को उसी में result.aar
पर लिखता है
डायरेक्ट्री:
./jetifier-standalone -i libraryToProcess.aar -o result.aar
इस्तेमाल की जानकारी
Jetifier, Java, XML, POM, और ProGuard रेफ़रंस को माइग्रेट करता है, जो
android.support.*
पैकेज को बदला जा रहा है, ताकि वे संबंधित पैकेज पर ले जा सकें
androidx.*
पैकेज.
android.support.*
के लिए ProGuard वाइल्डकार्ड हमेशा सीधे मैप नहीं करते हैं
androidx.*
पैकेज में, Jetifier सभी ज़रूरी शर्तें पूरी करता है.
अगर android.support.*
पैकेज में कोई ऐसा टाइप है जो किसी
यह लाइब्रेरी आर्टफ़ैक्ट के साथ काम करता है. हालांकि, यह तब तक अलग-अलग कैटगरी में माइग्रेट करता रहेगा, जब तक
मैपिंग कर रही हूँ. हालांकि, इस माइग्रेशन के काम करने की कोई गारंटी नहीं है, क्योंकि
हो सकता है कि मैप करने के नियम इतने सामान्य न हों कि वे सभी कस्टम टाइप को शामिल कर सकें.
बेहतर इस्तेमाल के लिए
Jetifier उपयोगिता, कुछ बेहतर इस्तेमाल के लिए काम करती है.
रिवर्स मोड
-r
फ़्लैग को पास करने पर, यूटिलिटी रिवर्स मोड में काम करती है. इस मोड में,
सुविधा, AndroidX API को सपोर्ट लाइब्रेरी जैसी सुविधाओं में बदल देती है. रिवर्स मोड
तब उपयोगी होता है, जब आपको
ऐसी लाइब्रेरी जो AndroidX API का इस्तेमाल करती हैं, लेकिन उन्हें
सपोर्ट लाइब्रेरी पर क्लिक करें.
उदाहरण
नीचे दिए गए उदाहरण में, लाइब्रेरी पर यूटिलिटी को रिवर्स मोड में चलाया गया है
मौजूदा डायरेक्ट्री में myAndroidXLib.aar
है और आउटपुट को इस पर लिखता है
इसी डायरेक्ट्री में supportLibVersion.aar
:
./jetifier-standalone -r -i myAndroidXLib.aar -o supportLibVersion.aar
कस्टम कॉन्फ़िगरेशन फ़ाइल
Jetifier टूल, सपोर्ट लाइब्रेरी क्लास को मैप करने के लिए एक कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करता है AndroidX के जैसी सुविधाएं. अगर ज़रूरी हो, तो ऐसी कस्टम कॉन्फ़िगरेशन फ़ाइल बनाई जा सकती है जो इस मैपिंग को बदल देता है. आप मैपिंग में ऐसी नई क्लास भी जोड़ सकते हैं जो वे सपोर्ट लाइब्रेरी के सदस्य हैं. उदाहरण के लिए, आप अपनी खुद की किसी क्लास को, इस्तेमाल के लिए लिखी गई सक्सेसर क्लास से बदलने के लिए मैपिंग करना AndroidX.
कस्टम कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करने के लिए:
- यूटिलिटी के इस डिवाइस से
default.generated.config
फ़ाइल निकालेंjetifier-core-*.jar
फ़ाइल और उसे सेव करें. - कॉन्फ़िगरेशन फ़ाइल की अपनी कॉपी में ज़रूरी बदलाव करें.
-c
फ़्लैग के साथ अपनी फ़ाइल को यूटिलिटी को भेजें.
उदाहरण के लिए:
./jetifier-standalone -i libraryToProcess.aar -o result.aar -c myCustomMapping.config