AndroidX के बारे में खास जानकारी

androidx नेमस्पेस में Android Jetpack लाइब्रेरी शामिल होती हैं. Support Library की तरह ही, androidx नेमस्पेस में मौजूद लाइब्रेरी, Android प्लैटफ़ॉर्म से अलग शिप की जाती हैं. साथ ही, ये Android के सभी वर्शन के साथ काम करती हैं.

AndroidX, ओरिजनल Android Support Library का बेहतर वर्शन है. अब इसे अपडेट नहीं किया जाता. androidx पैकेज, Support Library की जगह पूरी तरह से ले लेते हैं. ये एक जैसी सुविधाएं और नई लाइब्रेरी उपलब्ध कराते हैं.

इसके अलावा, AndroidX में ये सुविधाएं भी शामिल हैं:

  • AndroidX के सभी पैकेज, एक जैसे नेमस्पेस में होते हैं. यह नेमस्पेस, androidx स्ट्रिंग से शुरू होता है. Support Library पैकेज को, उनसे मिलते-जुलते androidx.* पैकेज में मैप कर दिया गया है. सभी पुरानी क्लास और बिल्ड आर्टफ़ैक्ट को नई क्लास और बिल्ड आर्टफ़ैक्ट में पूरी तरह से मैप करने के लिए, पैकेज रिफ़ैक्टरिंग पेज देखें.

  • सपोर्ट लाइब्रेरी के उलट, androidx पैकेज को अलग से मैनेज किया जाता है और अपडेट किया जाता है. androidx पैकेज, सिमैंटिक वर्शनिंग के नियमों का सख्ती से पालन करते हैं. इनकी शुरुआत वर्शन 1.0.0 से होती है. अपने प्रोजेक्ट में AndroidX लाइब्रेरी को अलग-अलग अपडेट किया जा सकता है.

  • वर्शन 28.0.0, Support Library का आखिरी वर्शन है. अब android.support लाइब्रेरी के कोई और वर्शन रिलीज़ नहीं किए जाएंगे. सभी नई सुविधाओं को androidx नेमस्पेस में डेवलप किया जाएगा.

अपने प्रोजेक्ट में androidx लाइब्रेरी का इस्तेमाल करना

मौजूदा प्रोजेक्ट को माइग्रेट करने का तरीका जानने के लिए, AndroidX पर माइग्रेट करना लेख पढ़ें.

अगर आपको किसी नए प्रोजेक्ट में androidx-नेमस्पेस वाली लाइब्रेरी का इस्तेमाल करना है, तो आपको कंपाइल एसडीके को Android 9.0 (एपीआई लेवल 28) या इसके बाद वाले वर्शन पर सेट करना होगा. साथ ही, आपको gradle.properties फ़ाइल में, Android Gradle प्लगिन के इन दोनों फ़्लैग को true पर सेट करना होगा.

  • android.useAndroidX: इस फ़्लैग को true पर सेट करने पर, Android प्लगिन, Support Library के बजाय सही AndroidX लाइब्रेरी का इस्तेमाल करता है. अगर इस फ़्लैग के लिए कोई वैल्यू नहीं दी गई है, तो डिफ़ॉल्ट रूप से इसकी वैल्यू false होती है.
  • android.enableJetifier: इस फ़्लैग को true पर सेट करने पर, Android प्लगिन अपने-आप तीसरे पक्ष की मौजूदा लाइब्रेरी को AndroidX डिपेंडेंसी का इस्तेमाल करने के लिए माइग्रेट कर देता है. इसके लिए, वह लाइब्रेरी के बाइनरी कोड को फिर से लिखता है. अगर इस फ़्लैग के लिए कोई वैल्यू नहीं दी गई है, तो डिफ़ॉल्ट रूप से यह false पर सेट होता है.

API संदर्भ

androidx नेमस्पेस में मौजूद सभी पैकेज और क्लास, AndroidX के रेफ़रंस सेक्शन में देखे जा सकते हैं.

अतिरिक्त संसाधन

Jetpack के होम पेज पर मौजूद कॉम्पोनेंट के बारे में ज़्यादा जानें. Support Library से androidx में पैकेज को फिर से व्यवस्थित करने के बारे में ज़्यादा जानने के लिए, इस विषय पर ब्लॉग पोस्ट पढ़ें.