المجموعة

  
تقليل تأثير الذاكرة في المجموعات الحالية والجديدة ذات الحجم الصغير
التعديل الأخير الإصدار المستقر سحب المرشح الإصدار التجريبي إصدار أولي
4 سبتمبر 2024 1.4.3 - - 1.5.0-alpha01

إعلان التبعيات

لإضافة تبعية إلى "المجموعة"، يجب إضافة مستودع Google Maven إلى مشروعك. الاطّلاع على مستودع Maven من Google لمزيد من المعلومات.

أضِف الملحقات التابعة للعناصر التي تحتاجها في ملف build.gradle لـ لتطبيقك أو الوحدة التي تستخدمها:

Groovy

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)
  • تم عرض التمثيل الداخلي لـ packedValue لكل من IntIntPair وFloatFloatPair. (Ifeb75 وb/331853566)
  • إضافة إذن الوصول إلى مصفوفة المحتوى في مجموعات القوائم. (I899d5، b/333903173)
  • أضِف DoubleList، وهي بنية بيانات تشبه القائمة محسَّنة للقيم المزدوجة. (Ia10d1، b/315127635)

إصلاح الأخطاء

  • نقل مكتبة المجموعات إلى الإصدار 1.9 من Kotlin المستهدف (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() في "النقاط المبعثرة" للعائلات. يمحو الإصدار الجديد العلامات المحذوفة من 8 علامات في المرة الواحدة ويتخطى عمليات الكتابة الأكثر تكلفة في هذه العملية. (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 على عمليات التنفيذ هذه.

إصلاح الأخطاء

  • حل مشكلة ضبط قيم ListIterator بشكل غير صحيح في ObjectList، ما قد يؤدي إلى تعطُّل بسبب IndexOutOfBoundsException. (I3bd8a، b/307049391)

الإصدار 1.4.0-alpha02

18 تشرين الأول (أكتوبر) 2023

تم طرح androidx.collection:collection-*:1.4.0-alpha02. يحتوي الإصدار 1.4.0-alpha02 على هذه عمليات التنفيذ.

التغييرات في واجهة برمجة التطبيقات

  • تمت إضافة حمل زائد لـ put الذي يعرض القيمة السابقة عند استبدالها بجميع المجموعات الأساسية، مثل FloatFloatMap.
  • تحويل طرق removeIf في المجموعات الأولية، مثل MutableFloatFloatMap إلى طريقة مضمّنة يضمن هذا عدم تخصيص دالة lambda لـ removeIf.

الإصدار 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 على هذه عمليات التنفيذ.

تغييرات مهمة منذ الإصدار 1.2.0

  • يمكنك الآن استخدام "المجموعات" في مشاريع Kotlin المتعددة المنصات. تجدر الإشارة إلى أنّ المجموعات التي تستهدف الإصدارات غير Android لا تزال في مرحلة تجريبية، ولكنّنا قرّرنا دمج الإصدارات لتسهيل تجربتها على المطوّرين.
  • تم نقل بيانات المصدر بالكامل إلى Kotlin. في إطار هذا التغيير، تمت كتابة العديد من واجهات برمجة التطبيقات الآن بشكل صحيح للحصول على قيمة فارغة، وأصبح عدد قليل من الأعضاء الخاصين للحزمة 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 على هذه عمليات التنفيذ.

الإصدار 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 (b/274786186 وKT-57531).

الإصدار 1.3.0-alpha03

22 آذار (مارس) 2023

تم طرح androidx.collection:collection-*:1.3.0-alpha03. يحتوي الإصدار 1.3.0-alpha03 على هذه عمليات التنفيذ.

الميزات الجديدة

  • يمكنك الآن استخدام المجموعات في مشاريع KMM. تجدر الإشارة إلى أنّ المجموعات التي تستهدف أجهزة غير Android لا تزال في مرحلة تجريبية، ولكنّنا قرّرنا دمج الإصدارات لتسهيل تجربتها على المطوّرين.

التغييرات في واجهة برمجة التطبيقات

  • تنفِّذ ArraySet الآن MutableCollections بدلاً من AbstractMutableCollection للسماح بتنفيذ toArray بشكل أكثر كفاءة في الذاكرة (I1ac32).

إصلاح الأخطاء

  • يتوفَّر ArraySet.toArray الآن على JVM فقط لأنّه يتم تضمينه دائمًا للتوافق مع Java فقط. على مستخدمي 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 على هذه عمليات التنفيذ.

التغييرات في واجهة برمجة التطبيقات

  • يتوفّر 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 على هذه عمليات التنفيذ.

الميزات الجديدة

  • تم نقل collection-ktx إضافة إلى العناصر الرئيسية للمجموعات الرئيسية، وهي "androidx.collection:collection". يتيح هذا التغيير لمستخدمي Kotlin الوصول إلى إضافات -ktx الموجودة مسبقًا بدون الحاجة إلى التبعية بتنسيق -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. يتيح هذا التغيير لمستخدمي Kotlin الوصول إلى إضافات -ktx الموجودة مسبقًا بدون الحاجة إلى التبعية بتنسيق -ktx، مع الحفاظ على التوافق مع المستخدمين الحاليين. ولم يعُد الاحتفاظ بهذه الإضافات في إحدى عناصر -ktx المنفصلة مفيدًا لأنّ الأداة الرئيسية قد تم نقلها إلى لغة Kotlin. (I8659a)
  • تحويل LongSparseArray إلى لغة Kotlin. يضيف هذا التغيير قيمًا فارغة صريحة إلى أنواعه، وهو تغيير متوافق مع النظام الثنائي، ولكنه قد يتسبب في عدم توافق المصدر. على وجه الخصوص: * لم يعُد من الممكن الوصول إلى .isEmpty كموقع إلكتروني، ويجب الوصول إليه كطلب دالة في لغة Kotlin - .isEmpty() (Idfd0f).
  • تحويل SimpleArrayMap إلى لغة Kotlin. نتج عن هذا التغيير بعض التغييرات غير المتوافقة، وذلك كنتيجة لإمكانية التشغيل التفاعلي لـ Java-Kotlin والقدرة على تحديد القيم الفارغة في المصدر بشكل صحيح.
    • واجهات برمجة التطبيقات الخاصة بالحزمة، .mSize، و.mArray، و.mHashes، تم إنشاء .indexOf() و.indexOfNull() و.indexOfValue(). خاص - هذا من الناحية الفنية تغيير ثنائي غير متوافق، ولكن عن الرؤية المقصودة لهذه الحقول وأقرب يمكن تحقيقه في Kotlin لأنه لا يتضمن طريقة لتحديد إذن الوصول الخاص بالحزمة.
    • يتم الآن تحديد قيمة العدم في بعض الأنواع بشكل صحيح، ويؤثر الطريقتان هي: .getOrDefault و.keyAt و.valueAt و.setValueAt .put، .putIfAbsent، .removeAt، .replace
    • بالنسبة إلى مستخدمي Kotlin، يتوفر .isEmpty() الآن كدالة فقط بدلاً من أيضًا من خلال الدخول إلى الممتلكات. (I271b7، b/182813986)
  • تحويل CircularArray إلى لغة Kotlin. التغييرات البارزة:

    • تصحيح باطلة قيمها العامة لتصبح غير صفرية، وهو ما كان سابقًا من غير الممكن الإفصاح عنها، ولكن تم فرضها في جميع واجهات برمجة التطبيقات العامة الخاصة بها.
    • بسبب إمكانية التشغيل التفاعلي لـ Java بلغة Kotlin، كان من الممكن في السابق الدخول إلى طرق معينة مثل الخصائص أو الدوال. ومع ذلك، يمكن تقليل التكرار مع الحفاظ على التوافق الثنائي، كان من الضروري لإزالتها، وهو تغيير غير متوافق مع المصدر. المتضررون المكالمات هي: ".isEmpty" و".getLast()" و".getFirst()". (Ifffac)
  • تحويل CircularIntArray إلى لغة Kotlin. بفضل إمكانية التشغيل التفاعلي لـ Java في 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 على عمليات الالتزام هذه.

تغييرات مهمة منذ الإصدار 1.1.0

  • إضافة دالة إنشاء صفيف إلى ArraySet (Id7f19)
  • الحفاظ على امتثال entrySet() لواجهة برمجة التطبيقات من خلال تنفيذ entrySet().toArray() وremove() وremoveAll() وretainAll()، وإزالة تنفيذ entrySet().addAll() (I5d505)

الإصدار 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() لواجهة برمجة التطبيقات من خلال تنفيذ entrySet().toArray() وremove() وremoveAll() وretainAll()، وإزالة تنفيذ entrySet().addAll() (I5d505)

الإصدار 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 (Id7f19)

الإصدار 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:

الميزات الجديدة

  • استخدام تنفيذ أكثر كفاءة لدالتَي contains وisNotEmpty في 'collection-ktx' قطعة أثرية. (aosp/866529)

التغييرات في واجهة برمجة التطبيقات

  • إضافة 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 واجهة برمجة التطبيقات والوظائف نفسها وتتطابق مع واجهة برمجة التطبيقات المستخدَمة في "خرائط Google" غير المخصّصة. (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. يمكن الاطّلاع على صفقات الاشتراك المضمَّنة في هذا الإصدار هنا.

الميزات الجديدة

  • استخدام تنفيذ أكثر كفاءة لدالتَي 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. يمكن الاطّلاع على صفقات الاشتراك المضمَّنة في هذا الإصدار هنا.

التغييرات في واجهة برمجة التطبيقات

  • تمت إزالة الطريقة المذكورة في ملاحظات الإصدار alpha03 بسبب تغيير قيمة @RestrictTo. لم يكن هذا الموقع الإلكتروني مُستخدَمًا في أي من مكتبة AndroidX (في الوقت الحالي أو في الماضي) ولم يقدّم أي وظائف غير متوفّرة في واجهة برمجة التطبيقات العامة.

إصلاح الأخطاء

  • يمكنك تغيير 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. يمكن العثور على القائمة الكاملة لخطط الاشتراك المضمَّنة في هذا الإصدار. هنا.

التغييرات في واجهة برمجة التطبيقات

  • هناك طريقة على 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 واجهة برمجة التطبيقات والوظائف نفسها وتتطابق مع واجهة برمجة التطبيقات المستخدمة في "خرائط Google" غير المتخصّصة. (aosp/866053)

الإصدار 1.1.0-alpha01

3 كانون الأول (ديسمبر) 2018

التغييرات في واجهة برمجة التطبيقات

  • إضافة 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)