مجموعه
آخرین به روز رسانی | انتشار پایدار | کاندید را آزاد کنید | نسخه بتا | انتشار آلفا |
---|---|---|---|---|
13 نوامبر 2024 | 1.4.5 | - | - | 1.5.0-alpha06 |
اعلام وابستگی ها
برای افزودن وابستگی به مجموعه، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.
وابستگیهای مصنوعات مورد نیاز خود را در فایل build.gradle
برای برنامه یا ماژول خود اضافه کنید:
شیار
dependencies { def collection_version = "1.4.5" implementation "androidx.collection:collection:$collection_version" }
کاتلین
dependencies { val collection_version = "1.4.5" implementation("androidx.collection:collection:$collection_version") }
برای اطلاعات بیشتر درباره وابستگیها، به افزودن وابستگیهای ساخت مراجعه کنید.
بازخورد
بازخورد شما به بهتر شدن Jetpack کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.
برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.
نسخه 1.5
نسخه 1.5.0-alpha06
13 نوامبر 2024
androidx.collection:collection-*:1.5.0-alpha06
منتشر شد. نسخه 1.5.0-alpha06 حاوی این commit ها است.
رفع اشکال
- مشکلی را که میتوانست در
SieveCache
وOrderedScatterSet
هنگام اضافه کردن موارد متعدد که باعث برخورد مکرر کلید میشوند، رخ دهد، برطرف کرد. ( Iaaf3d , b/375607736 ) - هدف Wasm را به کتابخانه مجموعه اضافه کنید. ( I66fe3 , b/352722444 )
نسخه 1.5.0-alpha05
30 اکتبر 2024
androidx.collection:collection-*:1.5.0-alpha05
منتشر شد. نسخه 1.5.0-alpha05 حاوی این commit ها است.
نسخه 1.5.0-alpha04
16 اکتبر 2024
androidx.collection:collection-*:1.5.0-alpha04
منتشر شد. نسخه 1.5.0-alpha04 حاوی این تعهدات است.
نسخه 1.5.0-alpha03
2 اکتبر 2024
androidx.collection:collection-*:1.5.0-alpha03
منتشر شد. نسخه 1.5.0-alpha03 حاوی این commit ها است.
تغییرات API
- به روز رسانی نسخه کاتلین به 1.9 ( I1a14c )
مشارکت خارجی
- فوروارد
contains
بهcontainsKey
است. با تشکر جیک وارتون! ( I9362b ) - کانتینر سازها را برای مجموعه های تخصصی اسکالر اضافه کنید. با تشکر جیک وارتون! ( I13179 )
نسخه 1.5.0-alpha02
18 سپتامبر 2024
androidx.collection:collection-*:1.5.0-alpha02
منتشر شد. نسخه 1.5.0-alpha02 حاوی این تعهدات است.
تغییرات API
- پشتیبانی از هدف پلتفرم
watchosDeviceArm64
را اضافه می کند. ( I1cc04 , b/364652024 )
نسخه 1.5.0-alpha01
4 سپتامبر 2024
androidx.collection:collection-*:1.5.0-alpha01
منتشر شد. نسخه 1.5.0-alpha01 حاوی این تعهدات است.
تغییرات API
-
OrderedScatterSet
یک مجموعه جدید سفارش داده شده و بدون تخصیص است ( Ic4178 ) -
SieveCache
یک جایگزین جدید بدون تخصیص برایLruCache
است که ویژگی های نسبت ضربه بهتری را ارائه می دهد. ( I50a17 ) - نمایش داخلی
packedValue
برایIntIntPair
وFloatFloatPair
نمایش داده شد. ( Ifeb75 , b/331853566 ) - افزودن دسترسی به آرایه محتوا در مجموعه های لیست. ( I899d5 , b/333903173 )
-
DoubleList
اضافه کنید، یک ساختار داده مانند لیست که برای مقادیر Double بهینه شده است. ( Ia10d1 , b/315127635 )
رفع اشکال
- کتابخانه مجموعهها به سمت هدف Kotlin 1.9 حرکت میکند ( I0782f )
- بسیاری از مجموعه ها را برای کارآمدتر بودن بهینه کنید. ( IC0566 )
نسخه 1.4
نسخه 1.4.5
30 اکتبر 2024
androidx.collection:collection-*:1.4.5
منتشر شد. نسخه 1.4.5 حاوی این commit ها است.
نسخه 1.4.4
18 سپتامبر 2024
androidx.collection:collection-*:1.4.4
منتشر شد. نسخه 1.4.4 حاوی این commit ها است.
رفع اشکال
- راه حل
ArrayIndexOutOfBounds
هنگام مرتب سازی یک مجموعه خالی. ( I65245 )
نسخه 1.4.3
7 آگوست 2024
androidx.collection:collection-*:1.4.3
منتشر شد. نسخه 1.4.3 شامل این commit ها است.
رفع اشکال
- یک خرابی را که میتوانست در
ScatterMap
،ScatterSet
و انواع ابتدایی آنها رخ دهد، برطرف کرد. ( I38a4a , b/352560465 ) - بهینه سازی عملکرد به طور خاص:
- فراخوانهای
check()
وrequired()
با انواعی جایگزین کنید که پرتابهای استثنایی درون خطی ندارند. این باعث کاهش اندازه باینری نهایی می شود و مهمتر از آن فشار i-cache را کمی کاهش می دهد. - بهبود
removeDeletedMarkers()
در خانواده مجموعه های "scatter". نسخه جدید نشانگرهای حذف شده را هر بار 8 نشانگر پاک می کند و از نوشتن گران تر در این فرآیند صرف نظر می کند. ( IC0566 )
- فراخوانهای
نسخه 1.4.2
24 جولای 2024
androidx.collection:collection-*:1.4.2
منتشر شد. نسخه 1.4.2 حاوی این commit ها است.
ویژگی های جدید
- شامل اهداف چند پلتفرمی اضافی Kotlin:
watchos
،tvos
،linuxArm64
. ( b/352543988 )
نسخه 1.4.1
10 جولای 2024
androidx.collection:collection-*:1.4.1
منتشر شد. نسخه 1.4.1 شامل این commit ها است.
رفع اشکال
- هنگام تغییر اندازه، سنگ قبرهای حذف شده را از Map/Set حذف کنید. ( 7a996c5 , b/345960092 )
نسخه 1.4.0
24 ژانویه 2024
androidx.collection:collection-*:1.4.0
منتشر شد. نسخه 1.4.0 حاوی این commit ها است.
تغییرات مهم از 1.3.0
مجموعه های جدید با کارایی بالا برای ذخیره سازی اولیه بدون بوکس اضافه شده است:
-
MutableScatterMap
&ScatterMap
- کلاس هایی باMutableMap
و API شبیه نقشه -
MutableScatterSet
&ScatterSet
- کلاس هایی با APIMutableSet
و Set مانند -
MutableObjectList
&ObjectList
- کلاس هایی باMutableList
و API مانند List
به عنوان مثال، یک نقشه با یک کلید عدد صحیح و یک مقدار مرجع، یک IntObjectMap<T>
است. نقشه ای با کلید طولانی و مقدار شناور LongFloatMap
است. نسخه ای با نام ObjectObjectMap
وجود ندارد زیرا توسط ScatterMap/MutableScatterMap
پوشش داده شده است.
نسخه 1.4.0-rc01
10 ژانویه 2024
androidx.collection:collection-*:1.4.0-rc01
بدون هیچ تغییری منتشر شد. نسخه 1.4.0-rc01 حاوی این commit ها است.
نسخه 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 حاوی این تعهدات است.
رفع اشکال
- برای
ListIterator
مقادیر نادرست را درObjectList
تنظیم کنید که ممکن است به دلیلIndexOutOfBoundsException
منجر به خرابی شود. ( I3bd8a , b/307049391 )
نسخه 1.4.0-alpha02
18 اکتبر 2023
androidx.collection:collection-*:1.4.0-alpha02
منتشر شد. نسخه 1.4.0-alpha02 حاوی این commit ها است.
تغییرات API
- اضافه بار برای
put
اضافه شده است که وقتی به همه مجموعههای ابتدایی جایگزین میشود، مقدار قبلی را برمیگرداند، مانندFloatFloatMap
. - متدهای
removeIf
در مجموعه های اولیه مانندMutableFloatFloatMap
به درون خطی تبدیل کنید. این تضمین می کند که لامبدا برایremoveIf
تخصیص داده نمی شود.
نسخه 1.4.0-alpha01
4 اکتبر 2023
androidx.collection:collection-*:1.4.0-alpha01
منتشر شد. نسخه 1.4.0-alpha01 حاوی این commit ها است.
ویژگی های جدید
مجموعههای جدید با راندمان بالا اضافه شدهاند که سربار تخصیص پایین و عملکرد بالایی دارند:
-
MutableScatterMap
&ScatterMap
- کلاس هایی باMutableMap
و API شبیه نقشه -
MutableScatterSet
&ScatterSet
- کلاس هایی با APIMutableSet
و Set مانند -
MutableObjectList
&ObjectList
- کلاس هایی باMutableList
و API مانند List
مجموعه های جدید با کارایی بالا برای ذخیره سازی اولیه بدون بوکس اضافه شده است:
-
Mutable[Int|Float|Long]List
- کلاسهایی باMutableList<Int|Float|Long>
-مانند API.[Int|Float|Long]List
فقط خواندنی نیز وجود دارد. به عنوان مثال، اعداد صحیح را می توان درIntList
نگه داشت. -
Mutable[Int|Float|Long]Set
- کلاسهایی باMutableSet<Int|Float|Long>
-مانند API.[Int|Float|Long]Set
فقط خواندنی نیز وجود دارد. به عنوان مثال، اعداد صحیح را می توان در یک IntSet نگه داشت. -
Mutable[Int|Float|Long|Object][Int|Float|Long|Object]Map
- کلاسهایی با API شبیه به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 حاوی این commit ها است.
تغییرات مهم از 1.2.0
- اکنون می توانید از مجموعه ها در پروژه های چند پلتفرمی Kotlin استفاده کنید. توجه داشته باشید که اهداف غیر اندرویدی مجموعهها هنوز آزمایشی هستند، اما ما تصمیم گرفتیم نسخهها را ادغام کنیم تا توسعهدهندگان بتوانند آنها را راحتتر امتحان کنند.
- همه منبع به کاتلین منتقل شده است. به عنوان بخشی از این تغییر، بسیاری از APIها اکنون به درستی برای باطل تایپ می شوند و تعداد کمی از اعضای خصوصی بسته
internal
شده اند. فهرستی از تغییرات دقیق در یادداشتهای انتشار جزئی 1.3.x در زیر موجود است. - همراه با مهاجرت Kotlin،
collection-ktx
با مصنوع مجموعه اصلی ادغام شده است. شما می توانید با خیال راحت هر گونه وابستگی بهcollection:collection-ktx
را به نفعcollection:collection
رها کنید زیراcollection-ktx
اکنون خالی است.
نسخه 1.3.0-rc01
6 سپتامبر 2023
androidx.collection:collection-*:1.3.0-rc01
بدون هیچ تغییری منتشر شد. نسخه 1.3.0-rc01 حاوی این commit ها است.
نسخه 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
منتشر شد.
رفع اشکال
- محدودیتهای وابستگی را از مصنوعات Maven حذف کرد تا مشکل ساخت را در Kotlin Native Targets حل کند ( b/274786186 ، KT-57531 ).
نسخه 1.3.0-alpha03
22 مارس 2023
androidx.collection:collection-*:1.3.0-alpha03
منتشر شد. نسخه 1.3.0-alpha03 حاوی این commit ها است.
ویژگی های جدید
- اکنون می توانید از مجموعه ها در پروژه های KMM استفاده کنید. توجه داشته باشید که اهداف غیر اندرویدی مجموعهها هنوز آزمایشی هستند، اما ما تصمیم گرفتیم نسخهها را ادغام کنیم تا توسعهدهندگان بتوانند آنها را راحتتر امتحان کنند.
تغییرات API
-
ArraySet
اکنونMutableCollections
به جایAbstractMutableCollection
پیاده سازی می کند تا امکان اجرای کارآمدتر حافظهtoArray
را فراهم کند ( I1ac32 )
رفع اشکال
-
ArraySet.toArray
اکنون فقط در JVM در دسترس است زیرا همیشه فقط برای سازگاری با جاوا گنجانده شده است. کاربران Kotlin معمولاً باید به جای آن از کمک کننده های.toTypedArray
stdlib استفاده کنند که دقیقاً همان عملکرد را با ایمنی نوع اضافه شده ارائه می دهد. ( 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 حاوی این commit ها است.
تغییرات API
-
SparseArrayCompat
اکنون برای پلتفرمهای غیرjvm از مصنوعات رایج در دسترس است ( Ic9bd0 ، b/219589118 ، b/228347315 ) -
CircularIntArray
اکنون برای پلتفرمهای غیرjvm از آرتیفکت رایج در دسترس است ( I3d8ef , b/228344943 ) -
LongSparseArray
اکنون برای پلتفرمهای غیرjvm از مصنوعات رایج در دسترس است ( 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 حاوی این commit ها است.
ویژگی های جدید
- پسوندهای
collection-ktx
به آرتیفکت مجموعههای اصلی،androidx.collection:collection
منتقل شدهاند. این تغییر باعث میشود که پسوندهای -ktx از قبل موجود برای کاربران Kotlin بدون نیاز به وابستگی -ktx قابل دسترسی باشند، در حالی که همچنان سازگاری را برای کاربران موجود حفظ میکند. از آنجایی که مصنوع اصلی به Kotlin منتقل شده است، نگهداری این افزونه ها در یک آرتیفکت -ktx جداگانه دیگر مفید نیست. ( I6eef2 )
تغییرات API
-
ArraySet
اکنونAbstractMutableCollection
گسترش می دهد و دیگر مستقیماً رابط Collection را پیاده سازی نمی کند. ( 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()
-
- تماسهای زیر دیگر از کاتلین امکانپذیر نیست:
-
set.toArray()
- ازset.toTypedArray()
استفاده کنید -
set.toArray(array)
- استفاده ازset.forEachIndexed(array::set)
-
- فراخوانی های زیر دارای آرگومان نوع
- سازنده سربارگذاری شده را برای
SparseArrayCompat
به عنوان یک آرگومان اختیاری برای کاربران Kotlin ترکیب کنید. ( If8407 , b/227474719 ) - دستور عملگر را برای
SparseArrayCompat.get(key, defaultValue).
توجه داشته باشید که این همچنان به نحو عملگر برای.get(key)
اجازه می دهد، اما سطح APISparseArrayCompat
را با کلاس های دیگر در این کتابخانه بهتر تراز می کند. ( I9a38d ) - پسوندهای
LongSparseArray
را به مصنوع اصلی، androidx.collection:collection منتقل کنید. این تغییر باعث میشود که پسوندهای -ktx از قبل موجود برای کاربران Kotlin بدون نیاز به وابستگی -ktx قابل دسترسی باشند، در حالی که همچنان سازگاری را برای کاربران موجود حفظ میکند. از آنجایی که مصنوع اصلی به Kotlin منتقل شده است، نگهداری این افزونه ها در یک آرتیفکت -ktx جداگانه دیگر مفید نیست. ( I8659a ) -
LongSparseArray
به Kotlin تبدیل کنید. این تغییر به انواع آن بی اعتباری صریح اضافه می کند، که یک تغییر سازگار باینری است، اما ممکن است باعث ناسازگاری منبع شود. به طور خاص: *.isEmpty
دیگر به عنوان یک ویژگی قابل دسترسی نیست، باید به عنوان یک تابع در Kotlin -.isEmpty()
( Idfd0f ) قابل دسترسی باشد. -
SimpleArrayMap
به Kotlin تبدیل کنید. این تغییر باعث ایجاد چند تغییر ناسازگار می شود که در نتیجه تعامل جاوا-کاتلین و توانایی تعریف صحیح بی اعتباری انواع در منبع است.- بستههای API خصوصی،
.mSize
،.mArray
،.mHashes
،.indexOf()
.indexOfValue()
.indexOfNull()
و نزدیکترین چیزی است که میتوانیم در Kotlin به دست آوریم زیرا راهی برای مشخص کردن قابلیت مشاهده بسته-خصوصی ندارد. - باطل بودن برخی از انواع اکنون به درستی تعریف شده است، روش های تحت تأثیر عبارتند از:
.getOrDefault
،.keyAt
،.valueAt
،.setValueAt
،.put
،.putIfAbsent
،.removeAt
،.replace
. - برای کاربران Kotlin،
.isEmpty()
اکنون فقط به عنوان یک تابع به جای دسترسی به ویژگی در دسترس است. ( I271b7 , b/182813986 )
- بستههای API خصوصی،
CircularArray
به Kotlin تبدیل کنید. تغییرات قابل توجه:- باطل بودن ژنریک های خود را به صورت غیر تهی تصحیح می کند، که قبلاً اعلام آن غیرممکن بود، اما در همه API های عمومی آن اعمال می شد.
- با توجه به interop جاوای Kotlin، قبلاً امکان دسترسی به برخی روش ها به عنوان ویژگی یا توابع وجود داشت. با این حال، برای کاهش تکرار و حفظ سازگاری باینری، لازم بود این موارد حذف شوند، که یک تغییر ناسازگار با منبع است. فراخوانیهای تحت تأثیر عبارتند از:
.isEmpty
،.getLast()
و.getFirst()
. ( ایفک )
CircularIntArray
به Kotlin تبدیل کنید. با توجه به interop جاوای Kotlin، قبلاً امکان دسترسی به برخی روش ها به عنوان ویژگی یا توابع وجود داشت. با این حال، برای کاهش تکرار و حفظ سازگاری باینری، لازم بود این موارد حذف شوند، که یک تغییر ناسازگار با منبع است. تماس های تحت تأثیر عبارتند از:.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 حاوی این commit ها است.
تغییرات مهم از 1.1.0
- یک سازنده آرایه به
ArraySet
اضافه کنید. ( ID7f19 ) - با اجرای enterSet
entrySet()
entrySet().toArray()
،remove()
،removeAll()
وretainAll()
و حذف پیاده سازیentrySet().addAll()
( I5d505 ) مطابق با API قرار دهید.
نسخه 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 حاوی این commit ها است.
تغییرات API
- هیچ تغییری نسبت به نسخه بتای قبلی وجود ندارد.
نسخه 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 حاوی این تعهدات است.
رفع اشکال
- با اجرای enterSet
entrySet()
entrySet().toArray()
،remove()
،removeAll()
وretainAll()
و حذف پیاده سازیentrySet().addAll()
( I5d505 ) مطابق با API قرار دهید.
نسخه 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 حاوی این commit ها است.
تغییرات API
- یک سازنده آرایه به
ArraySet
اضافه کنید. ( ID7f19 )
نسخه 1.1.0
نسخه 1.1.0
5 ژوئن 2019
androidx.collection:collection:1.1.0
و androidx.collection:collection-ktx:1.1.0
منتشر شدند. commit های شامل 1.1.0 را می توانید در اینجا پیدا کنید.
در زیر خلاصه ای از تغییرات از 1.0.0 به 1.1.0 آمده است:
ویژگی های جدید
- از اجرای کارآمدتر برای توابع
contains
وisNotEmpty
در آرتیفکت 'collection-ktx' استفاده کنید. ( aosp/866529 )
API تغییر می کند
-
putIfAbsent
بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید ( aosp/772608 ) - افزودن
getOrDefault
بهSimpleArrayMap
( aosp/772607 ) -
remove
دو آرگومان را بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید. پسوندهای KTX مربوطه را برای این عملکرد منسوخ کنید. ( aosp/772482 ) -
replace
دو آرگومان را بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید ( aosp/772483 ) -
replace
سه آرگومان را بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید ( aosp/772484 ) - روش های
delete
اضافی را منسوخ کنید. روشremove
همان API و عملکرد را ارائه می دهد و با API استفاده شده توسط Maps غیر تخصصی مطابقت دارد. ( aosp/866053 )
رفع اشکال
-
SimpleArrayMap
تغییر دهید تا آرایه های کش جهانی داخلی آن درSimpleArrayMap.class
به جایArrayMap.class
همگام شود. این تضمین می کند که اگر فقط از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
منتشر شدند. commit های موجود در این نسخه را می توانید در اینجا بیابید.
ویژگی های جدید
- از اجرای کارآمدتر برای توابع
contains
وisNotEmpty
در آرتیفکت 'collection-ktx' استفاده کنید. ( aosp/866529 )
نسخه 1.1.0-beta01
3 آوریل 2019
androidx.collection:collection:1.1.0-beta01
و androidx.collection:collection-ktx:1.1.0-beta01
منتشر شدند. commit های موجود در این نسخه را می توانید در اینجا بیابید.
API تغییر می کند
- روشی که در یادداشتهای انتشار alpha03 بهعنوان تغییر مقدار
@RestrictTo
آن ذکر شده است، حذف شده است. هیچ کتابخانه AndroidX (در حال حاضر یا در گذشته) از آن استفاده نمی کرد و هیچ عملکردی را ارائه نمی داد که در API عمومی وجود نداشته باشد.
رفع اشکال
-
SimpleArrayMap
تغییر دهید تا آرایه های کش جهانی داخلی آن درSimpleArrayMap.class
به جایArrayMap.class
همگام شود. این تضمین می کند که اگر فقط از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
منتشر شدند. لیست کامل commit های موجود در این نسخه را می توانید در اینجا بیابید.
API تغییر می کند
- روشی در
ArraySet
که قبلاً@RestrictTo(LIBRARY_GROUP)
علامت گذاری شده بود به@RestrictTo(LIBRARY_GROUP_PREFIX)
تغییر کرد. این برای پشتیبانی از استفاده تاریخی توسط سایر کتابخانههای AndroidX است که اکنون در شناسههای مختلف گروه Maven هستند. این روش یا عمومی می شود یا در نسخه 1.1.0-alpha04 حذف می شود زیرا سایر کتابخانه های AndroidX نباید API های خاصی را دریافت کنند که سایر توسعه دهندگان آن را ندارند.
نسخه 1.1.0-alpha02
30 ژانویه 2019
androidx.collection:collection 1.1.0-alpha02
و androidx.collection:collection-ktx 1.1.0-alpha02
منتشر شدند.
API تغییر می کند
- روش های
delete
اضافی را منسوخ کنید. روشهایremove
همان API و عملکرد را ارائه میکنند و با API استفاده شده توسط Maps غیرتخصصی مطابقت دارد. ( aosp/866053 )
نسخه 1.1.0-alpha01
3 دسامبر 2018
API تغییر می کند
-
putIfAbsent
بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید ( aosp/772608 ) - افزودن
getOrDefault
بهSimpleArrayMap
( aosp/772607 ) -
remove
دو آرگومان را بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید. پسوندهای KTX مربوطه را برای این عملکرد منسوخ کنید. ( aosp/772482 ) -
replace
دو آرگومان را بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید ( aosp/772483 ) -
replace
سه آرگومان را بهLongSparseArray
،SimpleArrayMap
وSparseArrayCompat
اضافه کنید ( aosp/772484 )