कलेक्शन
नया अपडेट | स्टेबल रिलीज़ | रिलीज़ कैंडिडेट | बीटा रिलीज़ | ऐल्फ़ा रिलीज़ |
---|---|---|---|---|
4 सितंबर, 2024 | 1.4.3 | - | - | 1.5.0-ऐल्फ़ा01 |
डिपेंडेंसी तय करना
कलेक्शन पर डिपेंडेंसी जोड़ने के लिए, आपको अपने कलेक्शन में Google Maven रिपॉज़िटरी जोड़ना होगा प्रोजेक्ट. Google की Maven रिपॉज़िटरी पढ़ें हमारा वीडियो देखें.
उन आर्टफ़ैक्ट की डिपेंडेंसी जोड़ें जिनकी आपको build.gradle
फ़ाइल में ज़रूरत है
आपका ऐप्लिकेशन या मॉड्यूल:
ग्रूवी
dependencies { def collection_version = "1.4.3" implementation "androidx.collection:collection:$collection_version" }
Kotlin
dependencies { val collection_version = "1.4.3" implementation("androidx.collection:collection:$collection_version") }
डिपेंडेंसी के बारे में ज़्यादा जानकारी के लिए, बिल्ड डिपेंडेंसी जोड़ें लेख पढ़ें.
सुझाव
आपके सुझाव, शिकायत या राय से Jetpack को बेहतर बनाने में मदद मिलती है. अगर आपको नई समस्याओं का पता चलता है या आपको इस लाइब्रेरी को बेहतर बनाने के लिए आइडिया मिल सकते हैं. कृपया, इस मौजूदा समस्याएं इस लाइब्रेरी में जोड़ें. किसी मौजूदा समस्या के लिए अपना वोट दें. इसके लिए ये तरीके अपनाएं: स्टार बटन पर क्लिक करके ऐसा किया जा सकता है.
समस्या को ट्रैक करने वाले टूल से जुड़ा दस्तावेज़ देखें हमारा वीडियो देखें.
संस्करण 1.5
वर्शन 1.5.0-alpha01
4 सितंबर, 2024
androidx.collection:collection-*:1.5.0-alpha01
रिलीज़ हो गया है. वर्शन 1.5.0-alpha01 में ये कमिट मौजूद हैं.
एपीआई में किए गए बदलाव
OrderedScatterSet
, ऑर्डर किया गया नया कलेक्शन है. इसमें किसी तरह का डेटा असाइन नहीं किया जाता (Ic4178)SieveCache
,LruCache
की जगह इस्तेमाल करने की एक नई सुविधा है. इसमें किसी खास तरह का डेटा शामिल नहीं किया जाता. इसकी मदद से, हिट अनुपात की बेहतर विशेषताएं मिलती हैं. (I50a17)IntIntPair
औरFloatFloatPair
के लिए,packedValue
के इंटरनल रिप्रज़ेंटेशन की जानकारी ज़ाहिर की गई. (Ifeb75, b/331853566)- लिस्ट कलेक्शन में कॉन्टेंट कलेक्शन का ऐक्सेस जोड़ना. (I899d5, b/333903173)
DoubleList
जोड़ें. यह डबल वैल्यू के लिए ऑप्टिमाइज़ की गई सूची जैसी डेटा संरचना है. (Ia10d1, b/315127635)
गड़बड़ियां ठीक की गईं
- कलेक्शन लाइब्रेरी, Kotlin 1.9 (I0782f) को टारगेट करने जा रही है
- बेहतर तरीके से काम करने के लिए, कई कलेक्शन को ऑप्टिमाइज़ करें. (Ic0566)
वर्शन 1.4
वर्शन 1.4.3
7 अगस्त, 2024
androidx.collection:collection-*:1.4.3
रिलीज़ हो गया है. वर्शन 1.4.3 में ये बातें शामिल हैं.
गड़बड़ियां ठीक की गईं
ScatterMap
,ScatterSet
, और उनके पुराने वैरिएंट में हो सकने वाले गड़बड़ी को ठीक किया गया. (I38a4a, b/352560465)- परफ़ॉर्मेंस ऑप्टिमाइज़ेशन. खास तौर पर:
- कॉल को
check()
औरrequired()
में ऐसे वैरिएंट से बदलें जो अपवाद के तौर पर इनलाइन न किए गए हों. इससे आखिरी बाइनरी साइज़ कम हो जाता है और कैश मेमोरी में ज़्यादा दबाव नहीं आता. - "स्कैटर" में
removeDeletedMarkers()
को बेहतर बनाया गया कलेक्शन का परिवार. नए वर्शन में, मिटाए गए मार्कर को एक बार में आठ मार्कर हटाए जाते हैं. साथ ही, इस प्रोसेस में बहुत महंगे टेक्स्ट को स्किप किया जाता है. (Ic0566)
- कॉल को
वर्शन 1.4.2
24 जुलाई, 2024
androidx.collection:collection-*:1.4.2
रिलीज़ हो गया है. वर्शन 1.4.2 में ये बातें शामिल हैं.
नई सुविधाएं
- इसमें अन्य Kotlin मल्टीप्लैटफ़ॉर्म टारगेट शामिल हैं:
watchos
,tvos
,linuxArm64
. (b/352543988)
वर्शन 1.4.1
10 जुलाई, 2024
androidx.collection:collection-*:1.4.1
रिलीज़ हो गया है. वर्शन 1.4.1 में ये शर्तें शामिल हैं.
गड़बड़ियां ठीक की गईं
- साइज़ बदलते समय, मिटाए गए मकबरों को मैप/सेट से हटाएं. (7a996c5, b/345960092)
वर्शन 1.4.0
24 जनवरी, 2024
androidx.collection:collection-*:1.4.0
रिलीज़ हो गया है. वर्शन 1.4.0 में ये कमियां शामिल हैं.
1.3.0 के बाद से हुए अहम बदलाव
बिना बॉक्सिंग के प्रिमिटिव ब्रैंड को स्टोर करने के लिए, बेहतर तरीके से काम करने वाले नए कलेक्शन जोड़े गए हैं:
MutableScatterMap
औरScatterMap
-MutableMap
और क्लास के छात्र-छात्राएं मैप जैसा एपीआईMutableScatterSet
औरScatterSet
-MutableSet
और क्लास के छात्र-छात्राएं सेट-जैसा एपीआईMutableObjectList
औरObjectList
-MutableList
और क्लास के छात्र-छात्राएं सूची जैसा एपीआई
उदाहरण के लिए, पूर्णांक कुंजी और रेफ़रंस टाइप की वैल्यू वाला मैप, IntObjectMap<T>
होता है. लंबी कुंजी और फ़्लोट वैल्यू वाला मैप, LongFloatMap
होता है. ObjectObjectMap
नाम का कोई वर्शन नहीं है, क्योंकि यह ScatterMap/MutableScatterMap
में शामिल है.
वर्शन 1.4.0-rc01
10 जनवरी, 2024
androidx.collection:collection-*:1.4.0-rc01
को बिना किसी बदलाव के रिलीज़ किया गया. वर्शन 1.4.0-rc01 में ये कमिट शामिल हैं.
वर्शन 1.4.0-beta02
29 नवंबर, 2023
androidx.collection:collection-*:1.4.0-beta02
रिलीज़ हो गया है. वर्शन 1.4.0-beta02 में ये कमिट हैं.
नई सुविधाएं
FloatFloatPair
की परफ़ॉर्मेंस बेहतर की गई. (If5537)
गड़बड़ियां ठीक की गईं
ScatterMap.asMap()
इटरेटर अब नए इंस्टेंस (I28932, b/310365754) दिखाते हैं
वर्शन 1.4.0-beta01
15 नवंबर, 2023
androidx.collection:collection-*:1.4.0-beta01
रिलीज़ हो गया है. वर्शन 1.4.0-beta01 में ये कमिट हैं.
गड़बड़ियां ठीक की गईं
ObjectList
मेंListIterator
की गलत वैल्यू को ठीक करने के बाद, जोIndexOutOfBoundsException
की वजह से क्रैश हो सकते हैं. (I3bd8a, b/307049391)
वर्शन 1.4.0-alpha02
18 अक्टूबर, 2023
androidx.collection:collection-*:1.4.0-alpha02
रिलीज़ हो गया है. वर्शन 1.4.0-alpha02 में ये कमियां हैं.
एपीआई में किए गए बदलाव
put
के लिए ओवरलोड जोड़ा गया, जोFloatFloatMap
जैसे सभी प्रिमिटिव कलेक्शन में बदलने पर पिछली वैल्यू दिखाता है.MutableFloatFloatMap
जैसे शुरुआती कलेक्शन पर,removeIf
तरीकों को इनलाइन में बदलें. इससे यह पक्का हो जाता है किremoveIf
के लिए, Lambda फ़ंक्शन असाइन नहीं किया गया है.
वर्शन 1.4.0-alpha01
4 अक्टूबर, 2023
androidx.collection:collection-*:1.4.0-alpha01
रिलीज़ हो गया है. वर्शन 1.4.0-alpha01 में ये कमियां हैं.
नई सुविधाएं
ज़्यादा बेहतर तरीके से काम करने वाले नए कलेक्शन जोड़े गए हैं. इन कलेक्शन के लिए, ज़्यादा खर्च और परफ़ॉर्मेंस कम होती है:
MutableScatterMap
औरScatterMap
-MutableMap
और क्लास के छात्र-छात्राएं मैप जैसा एपीआईMutableScatterSet
औरScatterSet
-MutableSet
और क्लास के छात्र-छात्राएं सेट-जैसा एपीआईMutableObjectList
औरObjectList
-MutableList
और क्लास के छात्र-छात्राएं सूची जैसा एपीआई
बिना बॉक्सिंग के प्रिमिटिव ब्रैंड को स्टोर करने के लिए, बेहतर तरीके से काम करने वाले नए कलेक्शन जोड़े गए हैं:
Mutable[Int|Float|Long]List
-MutableList<Int|Float|Long>
जैसे एपीआई वाली क्लास. रीड-ओनली[Int|Float|Long]List
भी मौजूद है. जैसे, पूर्णांकों कोIntList
में रखा जा सकता है.Mutable[Int|Float|Long]Set
-MutableSet<Int|Float|Long>
जैसे एपीआई वाली क्लास. रीड-ओनली[Int|Float|Long]Set
भी मौजूद है. उदाहरण के लिए, पूर्णांकों को IntSet में रखा जा सकता है.Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map
-Mutable<Int|Float|Long,T, Int|Float|Long|T>
जैसे एपीआई वाली क्लास. रीड-ओनली[Int|Float|Long|Object][Int|Float|Long|Object]Map
भी मौजूद है. उदाहरण के लिए, पूर्णांक कुंजी और रेफ़रंस टाइप की वैल्यू वाला मैप,IntObjectMap<T>
होता है. लंबी कुंजी और फ़्लोट वैल्यू वाला मैपLongFloatMap
होता है.ObjectObjectMap
नाम का कोई वर्शन नहीं है, क्योंकि यहScatterMap/MutableScatterMap
में शामिल है.
वर्शन 1.3.0
वर्शन 1.3.0
4 अक्टूबर, 2023
androidx.collection:collection-*:1.3.0
रिलीज़ हो गया है. वर्शन 1.3.0 में ये कमियां शामिल हैं.
01.2.0 के बाद के अहम बदलाव
- अब आपके पास Kotlin मल्टीप्लैटफ़ॉर्म प्रोजेक्ट में, कलेक्शन का इस्तेमाल करने का विकल्प है. ध्यान दें कि कलेक्शन के गैर-Android टारगेट अब भी एक्सपेरिमेंट के तौर पर उपलब्ध हैं. हालांकि, हमने वर्शन मर्ज करने का फ़ैसला लिया है, ताकि डेवलपर उन्हें आसानी से आज़मा सकें.
- सभी सोर्स को Kotlin पर माइग्रेट कर दिया गया है. इस बदलाव के तहत, अब कई एपीआई, शून्य के लिए सही तरीके से टाइप किए गए हैं. साथ ही, कुछ पैकेज प्राइवेट सदस्य
internal
बन गए हैं. सटीक बदलावों की सूची नीचे 1.3.x के लिए छोटे-मोटे रिलीज़ नोट में उपलब्ध है. - Kotlin माइग्रेशन के साथ-साथ,
collection-ktx
को कलेक्शन के मुख्य आर्टफ़ैक्ट के साथ मर्ज कर दिया गया है. आप सुरक्षित रूप सेcollection:collection
के लिएcollection:collection-ktx
पर निर्भरता को छोड़ सकते हैं, क्योंकिcollection-ktx
अब खाली है.
वर्शन 1.3.0-rc01
6 सितंबर, 2023
androidx.collection:collection-*:1.3.0-rc01
को बिना किसी बदलाव के रिलीज़ किया गया. वर्शन 1.3.0-rc01 में ये कमिट हैं.
वर्शन 1.3.0-beta01
9 अगस्त, 2023
androidx.collection:collection-*:1.3.0-beta01
रिलीज़ हो गया है. वर्शन 1.3.0-beta01 में ये कमिट हैं.
वर्शन 1.3.0-alpha04
24 मार्च, 2023
androidx.collection:collection-*:1.3.0-alpha04
रिलीज़ हो गया है.
गड़बड़ियां ठीक की गईं
- Kotlin के नेटिव टारगेट (b/274786186, KT-57531) में बिल्ड की समस्या को हल करने के लिए, Maven आर्टफ़ैक्ट से डिपेंडेंसी से जुड़ी पाबंदियों को हटाया गया.
वर्शन 1.3.0-alpha03
22 मार्च, 2023
androidx.collection:collection-*:1.3.0-alpha03
रिलीज़ हो गया है. वर्शन 1.3.0-alpha03 में ये कमियां हैं.
नई सुविधाएं
- अब आप KMM प्रोजेक्ट में संग्रह का इस्तेमाल कर सकते हैं. ध्यान दें कि Android के अलावा, Android ऐप्लिकेशन के लिए बनाए गए कलेक्शन की सुविधा अब भी एक्सपेरिमेंट के तौर पर उपलब्ध है. हालांकि, हमने वर्शन मर्ज करने का फ़ैसला लिया है, ताकि डेवलपर उन्हें आसानी से आज़मा सकें.
एपीआई में किए गए बदलाव
ArraySet
अबAbstractMutableCollection
के बजायMutableCollections
को लागू करता है, ताकिtoArray
(I1ac32) की मेमोरी का बेहतर इस्तेमाल किया जा सके
गड़बड़ियां ठीक की गईं
ArraySet.toArray
अब सिर्फ़ JVM पर उपलब्ध है, क्योंकि इसे हमेशा सिर्फ़ Java के साथ काम करने के लिए शामिल किया गया था. Kotlin के उपयोगकर्ताओं को आम तौर पर, stdlib के.toTypedArray
हेल्पर का इस्तेमाल करना चाहिए, जो अतिरिक्त सुरक्षा के साथ वही फ़ंक्शन देता है. (I2c59b)
वर्शन 1.3.0-alpha02
27 जुलाई, 2022
androidx.collection:collection:1.3.0-alpha02
और androidx.collection:collection-ktx:1.3.0-alpha02
रिलीज़ हुई हैं. वर्शन 1.3.0-alpha02 में ये कमियां हैं.
एपीआई में किए गए बदलाव
SparseArrayCompat
, अब सामान्य आर्टफ़ैक्ट के नॉन-jvm प्लैटफ़ॉर्म के लिए उपलब्ध है (Ic9bd0, b/219589118, b/228347315)CircularIntArray
अब सामान्य आर्टफ़ैक्ट वाले गैर-जेवीएम प्लैटफ़ॉर्म के लिए उपलब्ध है (I3d8ef, b/228344943)LongSparseArray
अब सामान्य आर्टफ़ैक्ट वाले गैर-जेवीएम प्लैटफ़ॉर्म के लिए उपलब्ध है (I73149, b/228347315)
वर्शन 1.3.0-alpha01
29 जून, 2022
androidx.collection:collection:1.3.0-alpha01
और androidx.collection:collection-ktx:1.3.0-alpha01
रिलीज़ हुई हैं. वर्शन 1.3.0-alpha01 में ये कमियां हैं.
नई सुविधाएं
collection-ktx
एक्सटेंशन, मुख्य कलेक्शन आर्टफ़ैक्टandroidx.collection:collection
में माइग्रेट कर दिए गए हैं. इस बदलाव से, पहले से मौजूद -ktx एक्सटेंशन को Kotlin के उपयोगकर्ता ऐक्सेस कर सकते हैं. इसके लिए, -ktx डिपेंडेंसी की ज़रूरत नहीं होगी. साथ ही, यह मौजूदा उपयोगकर्ताओं के साथ काम करता रहेगा. इन एक्सटेंशन को एक अलग -ktx आर्टफ़ैक्ट में बनाए रखना अब फ़ायदेमंद नहीं है, क्योंकि मुख्य आर्टफ़ैक्ट को Kotlin में ले जाया गया है. (I6eef2)
एपीआई में किए गए बदलाव
ArraySet
, अबAbstractMutableCollection
के बारे में ज़्यादा जानकारी देता है. साथ ही, अब इसमें कलेक्शन इंटरफ़ेस को सीधे तौर पर लागू नहीं किया जा सकता. (If6da0, b/230860589)ArraySet
को Kotlin में बदला गया. ज़्यादा सख्त टाइपिंग की वजह से, हो सकता है कि कुछ Kotlin कॉल को कंपाइल न किया जा सके. (Id68c1, b/230860589)- इन कॉल में आर्ग्युमेंट टाइप
T
है,T?
नहीं:ArraySet<T>.contains(null)
ArraySet<T>.add(null)
ArraySet<T>.remove(null)
- इन कॉल का रिटर्न टाइप
T?
है, न किT!
:ArraySet<T?>.valueAt(n)
ArraySet<T?>.removeAt(n)
ArraySet<T?>().iterator().next()
- Kotlin से अब इस तरह के कॉल नहीं किए जा सकते:
set.toArray()
-set.toTypedArray()
का इस्तेमाल करेंset.toArray(array)
-set.forEachIndexed(array::set)
का इस्तेमाल करें
- इन कॉल में आर्ग्युमेंट टाइप
SparseArrayCompat
के लिए ओवरलोडेड कंस्ट्रक्टर को, Kotlin उपयोगकर्ताओं के लिए वैकल्पिक आर्ग्युमेंट के तौर पर जोड़ें. (If8407, b/227474719)SparseArrayCompat.get(key, defaultValue).
के लिए ऑपरेटर सिंटैक्स हटाएं. ध्यान दें कि यह अब भी.get(key)
के लिए ऑपरेटर सिंटैक्स की अनुमति देता है. हालांकि, यहSparseArrayCompat
के एपीआई सरफ़ेस को इस लाइब्रेरी की अन्य क्लास के साथ बेहतर तरीके से अलाइन करता है. (I9a38d)LongSparseArray
एक्सटेंशन को मुख्य आर्टफ़ैक्ट, androidx.collection:collection में माइग्रेट करें. इस बदलाव से, पहले से मौजूद -ktx एक्सटेंशन को Kotlin के उपयोगकर्ता ऐक्सेस कर सकते हैं. इसके लिए, -ktx डिपेंडेंसी की ज़रूरत नहीं होगी. साथ ही, यह मौजूदा उपयोगकर्ताओं के साथ काम करता रहेगा. इन एक्सटेंशन को एक अलग -ktx आर्टफ़ैक्ट में बनाए रखना अब फ़ायदेमंद नहीं है, क्योंकि मुख्य आर्टफ़ैक्ट को Kotlin में ले जाया गया है. (I8659a)LongSparseArray
को Kotlin में बदलें. इस बदलाव से इसके टाइप में कोई वैल्यू नहीं मिलती. यह बाइनरी के साथ काम करने वाला बदलाव है, लेकिन इसकी वजह से सोर्स के साथ गड़बड़ियां हो सकती हैं. खास तौर पर: *.isEmpty
को अब प्रॉपर्टी के तौर पर ऐक्सेस नहीं किया जा सकता. इसे Kotlin -.isEmpty()
(Idfd0f) में फ़ंक्शन कॉल के तौर पर ऐक्सेस करना ज़रूरी हैSimpleArrayMap
को Kotlin में बदलें. Java-Kotlin इंटरऑप और सोर्स में शून्य टाइप को सही तरीके से तय करने की क्षमता की वजह से, इस बदलाव में कुछ असंगत बदलाव हुए हैं.- पैकेज निजी API,
.mSize
,.mArray
,.mHashes
,.indexOf()
,.indexOfNull()
, और.indexOfValue()
बनाए गए निजी - यह तकनीकी रूप से बाइनरी असंगत बदलाव है, लेकिन यह इन फ़ील्ड की विज़िबिलिटी को दिखाता है. साथ ही, यह हमारे सबसे करीब है Kotlin में हासिल कर सकता है, क्योंकि इसमें तय करने का कोई तरीका शामिल नहीं है पैकेज-प्राइवेट विज़िबिलिटी. - कुछ प्रकारों की शून्यता अब ठीक से परिभाषित की गई है,
तरीके ये हैं:
.getOrDefault
,.keyAt
,.valueAt
,.setValueAt
,.put
,.putIfAbsent
,.removeAt
,.replace
. - Kotlin के उपयोगकर्ताओं के लिए,
.isEmpty()
अब सिर्फ़ फ़ंक्शन के तौर पर उपलब्ध है प्रॉपर्टी का ऐक्सेस भी दिया जाता है. (I271b7, b/182813986)
- पैकेज निजी API,
CircularArray
को Kotlin में बदलें. अहम बदलाव:- अपने जेनरिक की शून्यता को सुधार कर गैर-शून्य कर देता है, जो पहले थी एलान करना मुश्किल था, लेकिन इसे इसके सभी सार्वजनिक एपीआई में लागू किया गया था.
- Kotlin के Java इंटरऑप की वजह से, पहले
कुछ तरीके बताए गए हैं. हालांकि, कम करने के लिए
बाइनरी कंपैटबिलिटी को बनाए रखते हुए डुप्लिकेशन की समस्या को हल करना ज़रूरी था.
इन्हें हटाने के लिए, यह एक तरह का बदलाव है. प्रभावित
कॉल हैं:
.isEmpty
,.getLast()
और.getFirst()
. (इफ़फ़ैक)
CircularIntArray
को Kotlin में बदलें. Kotlin के Java इंटरऑप की वजह से, पहले कुछ मेथड को प्रॉपर्टी या फ़ंक्शन, दोनों के तौर पर ऐक्सेस किया जा सकता था. हालांकि, बाइनरी कंपैटबिलिटी को बनाए रखते हुए डुप्लिकेशन को कम करने के लिए, इन्हें हटाना ज़रूरी था. यह सोर्स के साथ काम नहीं करने वाला बदलाव है. इन कॉल पर असर पड़ा है:.isEmpty
,.getLast()
, और.getFirst()
. (Ie36ce)LruCache
को Kotlin (Ia2f19) में बदलेंSparseArrayCompat
को Kotlin में बदलें. (If6fe8)SparseArrayCompat.valueAt()
में व्यवहार में एक छोटा सा बदलाव जोड़ा गया है, जो शुरू नहीं हुए कॉल के लिए, अब गलत तरीके सेnull
नहीं दिखाता हैsize()
की सीमा में है, लेकिन दी गई शुरुआती क्षमता के अंदर है.इस बदलाव से कुछ ऐसे टाइप के लिए सही शून्य भी आ जाता है जो जो पहले मौजूद नहीं थे.
.get(): E?
->.get(): E
.replace(Int, Int?): Int?
->.replace(Int, Int): Int?
.replace(Int, Int?, Int?): Boolean
->.replace(Int, Int, Int): Boolean
.put(Int, Int?)
->.put(Int, Int)
.putIfAbsent(Int, Int?): Int?
->.putIfAbsent(Int, Int): Int?
.setValueAt(index: Int, value: Int?)
->.setValueAt(index: Int, value: Int)
.indexOfValue(value: Int?): Int
->.indexOfValue(value: Int): Int
.containsValue(value: Int?): Boolean
->.containsValue(value: Int): Boolean
.append(key: Int, value: Int?)
->.append(key: Int, value: Int)
वर्शन 1.2.0
वर्शन 1.2.0
1 दिसंबर, 2021
androidx.collection:collection:1.2.0
और androidx.collection:collection-ktx:1.2.0
रिलीज़ हुई हैं. वर्शन 1.2.0 में ये कमियां शामिल हैं.
1.1.0 के बाद से हुए अहम बदलाव
ArraySet
में कोई अरे कंस्ट्रक्टर जोड़ें. (आईडी7f19)entrySet().toArray()
,remove()
,removeAll()
, औरretainAll()
को लागू करके औरentrySet().addAll()
(I5d505) को लागू करके,entrySet()
को एपीआई के मुताबिक बनाएं
वर्शन 1.2.0-rc01
17 नवंबर, 2021
androidx.collection:collection:1.2.0-rc01
और androidx.collection:collection-ktx:1.2.0-rc01
रिलीज़ हुई हैं. वर्शन 1.2.0-rc01 में ये कमिट शामिल हैं.
एपीआई में किए गए बदलाव
- पिछले बीटा वर्शन की तुलना में कोई बदलाव नहीं हुआ.
वर्शन 1.2.0-beta01
13 अक्टूबर, 2021
androidx.collection:collection:1.2.0-beta01
और androidx.collection:collection-ktx:1.2.0-beta01
रिलीज़ हुई हैं. वर्शन 1.2.0-beta01 में ये तय किए गए हिस्से शामिल हैं.
गड़बड़ियां ठीक की गईं
entrySet().toArray()
,remove()
,removeAll()
, औरretainAll()
को लागू करके औरentrySet().addAll()
(I5d505) को लागू करके,entrySet()
को एपीआई के मुताबिक बनाएं
वर्शन 1.2.0-alpha01
16 दिसंबर, 2020
androidx.collection:collection:1.2.0-alpha01
और androidx.collection:collection-ktx:1.2.0-alpha01
रिलीज़ हुई हैं. वर्शन 1.2.0-alpha01 में ये कमियां हैं.
एपीआई में किए गए बदलाव
ArraySet
में कोई अरे कंस्ट्रक्टर जोड़ें. (आईडी7f19)
वर्शन 1.1.0
वर्शन 1.1.0
5 जून, 2019
androidx.collection:collection:1.1.0
और androidx.collection:collection-ktx:1.1.0
रिलीज़ हुई हैं. 1.1.0 में शामिल कमिट को यहां देखा जा सकता है.
यहां 1.0.0 से 1.1.0 में हुए बदलावों की खास जानकारी दी गई है:
नई सुविधाएं
- 'collection-ktx' में
contains
औरisNotEmpty
फ़ंक्शन को बेहतर तरीके से लागू करने की सुविधा का इस्तेमाल करें आर्टफ़ैक्ट. (aosp/866529)
एपीआई में किए गए बदलाव
LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
(aosp/772608) मेंputIfAbsent
जोड़ेंgetOrDefault
कोSimpleArrayMap
में जोड़ें (aosp/772607)LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
में दो आर्ग्युमेंटremove
जोड़ें. इस फ़ंक्शन के लिए, KTX एक्सटेंशन इस्तेमाल करें. (aosp/772482)LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
में दो आर्ग्युमेंटreplace
जोड़ें (aosp/772483)LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
में तीन-तर्कreplace
जोड़ें (aosp/772484)delete
के ग़ैर-ज़रूरी तरीकों का इस्तेमाल रोकें.remove
वाले तरीके में भी वही एपीआई और फ़ंक्शन मिलते हैं. साथ ही, यह उस एपीआई से मैच करता है जिसका इस्तेमाल किसी खास मैप के लिए नहीं किया गया है. (aosp/866053)
गड़बड़ियां ठीक की गईं
- इसके अरे के इंटरनल ग्लोबल कैश को
ArrayMap.class
के बजायSimpleArrayMap.class
पर सिंक करने के लिए,SimpleArrayMap
को बदलें. इससे यह पक्का हो जाता है कि अगर आप सिर्फ़SimpleArrayMap
का इस्तेमाल कर रहे हैं, तो कोड छोटा करने वाले टूल की मदद सेArrayMap
को हटाया जा सकता है. (aosp/934557)
वर्शन 1.1.0-rc01
7 मई, 2019
androidx.collection:collection:1.1.0-rc01
और androidx.collection:collection-ktx:1.1.0-rc01
रिलीज़ हुई हैं. इस वर्शन में शामिल कमिट को यहां देखा जा सकता है.
नई सुविधाएं
- 'collection-ktx' में
contains
औरisNotEmpty
फ़ंक्शन को बेहतर तरीके से लागू करने की सुविधा का इस्तेमाल करें आर्टफ़ैक्ट. (aosp/866529)
वर्शन 1.1.0-beta01
3 अप्रैल, 2019
androidx.collection:collection:1.1.0-beta01
और androidx.collection:collection-ktx:1.1.0-beta01
रिलीज़ हुई हैं. इस वर्शन में शामिल कमिट को यहां देखा जा सकता है.
एपीआई में किए गए बदलाव
- ऐल्फ़ा03 प्रॉडक्ट की जानकारी में
@RestrictTo
की वैल्यू बदलने के तौर पर बताए गए तरीके को हटा दिया गया है. इसे किसी भी AndroidX लाइब्रेरी (मौजूदा या ऐतिहासिक) में इस्तेमाल नहीं किया गया था. साथ ही, इसमें ऐसी कोई सुविधा नहीं थी जो सार्वजनिक एपीआई में मौजूद नहीं थी.
गड़बड़ियां ठीक की गईं
- इसके अरे के इंटरनल ग्लोबल कैश को
ArrayMap.class
के बजायSimpleArrayMap.class
पर सिंक करने के लिए,SimpleArrayMap
को बदलें. इससे यह पक्का हो जाता है कि अगर आप सिर्फ़SimpleArrayMap
का इस्तेमाल कर रहे हैं, तो कोड छोटा करने वाले टूल की मदद सेArrayMap
को हटाया जा सकता है. (aosp/934557)
वर्शन 1.1.0-alpha03
13 मार्च, 2019
androidx.collection:collection:1.0.0-alpha03
और
androidx.collection:collection-ktx:1.0.0-alpha03
रिलीज़ हो गई हैं.
इस वर्शन में शामिल कमिट की पूरी सूची देखी जा सकती है
यहां पढ़ें.
एपीआई में किए गए बदलाव
ArraySet
पर पहले से@RestrictTo(LIBRARY_GROUP)
के तौर पर मार्क किया गया तरीका था बदलकर@RestrictTo(LIBRARY_GROUP_PREFIX)
कर दिया गया है. इससे आपके कारोबार के इतिहास का का इस्तेमाल अन्य AndroidX लाइब्रेरी में भी किया जाता है, जो अब अलग-अलग Maven ग्रुप आईडी में हैं. यह विधि को या तो सार्वजनिक कर दिया जाएगा या 1.1.0-alpha04 में निकाल दिया जाएगा क्योंकि अन्य AndroidX लाइब्रेरी को ऐसे खास एपीआई नहीं मिलने चाहिए जो दूसरे डेवलपर को नहीं मिलते हैं.
वर्शन 1.1.0-alpha02
30 जनवरी, 2019
androidx.collection:collection 1.1.0-alpha02
और
androidx.collection:collection-ktx 1.1.0-alpha02
रिलीज़ हो गई हैं.
एपीआई में किए गए बदलाव
delete
के ग़ैर-ज़रूरी तरीकों का इस्तेमाल रोकें.remove
के तरीके में भी वही एपीआई और फ़ंक्शन मिलते हैं. साथ ही, ये तरीके उस एपीआई से मेल खाते हैं जिसका इस्तेमाल किसी खास मैप के लिए नहीं किया गया है. (aosp/866053)
वर्शन 1.1.0-alpha01
3 दिसंबर, 2018
एपीआई में किए गए बदलाव
LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
(aosp/772608) मेंputIfAbsent
जोड़ेंgetOrDefault
कोSimpleArrayMap
में जोड़ें (aosp/772607)LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
में दो आर्ग्युमेंटremove
जोड़ें. इस फ़ंक्शन के लिए, KTX एक्सटेंशन इस्तेमाल करें. (aosp/772482)LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
में दो आर्ग्युमेंटreplace
जोड़ें (aosp/772483)LongSparseArray
,SimpleArrayMap
, औरSparseArrayCompat
में तीन-तर्कreplace
जोड़ें (aosp/772484)