Appcompat

يتيح الوصول إلى واجهات برمجة التطبيقات الجديدة على إصدارات واجهة برمجة التطبيقات القديمة للنظام الأساسي (العديد منها يستخدم التصميم المتعدد الأبعاد).
آخر الأخبار الإصدار الثابت إصدار محتمل الإصدار التجريبي الإصدار الأولي
‫8 أبريل 2026 1.7.1 - - 1.8.0-alpha01

تحديد الاعتماديات

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

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

Groovy

dependencies {
    def appcompat_version = "1.7.1"

    implementation "androidx.appcompat:appcompat:$appcompat_version"
    // For loading and tinting drawables on older versions of the platform
    implementation "androidx.appcompat:appcompat-resources:$appcompat_version"
}

Kotlin

dependencies {
    val appcompat_version = "1.7.1"

    implementation("androidx.appcompat:appcompat:$appcompat_version")
    // For loading and tinting drawables on older versions of the platform
    implementation("androidx.appcompat:appcompat-resources:$appcompat_version")
}

لمزيد من المعلومات حول الاعتماديات، يُرجى الاطّلاع على إضافة اعتماديات الإصدار.

الملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.

إنشاء مشكلة جديدة

يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.

الإصدار 1.8

الإصدار ‎1.8.0-alpha01

‫8 أبريل 2026

تم طرح androidx.appcompat:appcompat:1.8.0-alpha01 وandroidx.appcompat:appcompat-resources:1.8.0-alpha01. يتضمّن الإصدار 1.8.0-alpha01 هذه التعديلات.

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

  • إزالة التعليقات التوضيحية القديمة @RequiresApi(21) (I44f33)
  • واجهة برمجة التطبيقات الجديدة TextAppearanceSpanCompat للعمل مع ميزة الخطوط القابلة للتنزيل (I9c1c8 وb/197242546 وb/393805627)

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

  • نقل القيمة التلقائية minSdk من الإصدار 21 من واجهة برمجة التطبيقات إلى الإصدار 23 من واجهة برمجة التطبيقات (Ibdfca، b/380448311، b/435705964، b/435705223)
  • تم تعديل AppCompat لاستخدام الإصدار 1.8.0 من Activity للسماح له باستخدام واجهة برمجة التطبيقات initializeViewTreeOwners() من ComponentActivity لضمان ضبط ViewTreeOwners الصحيح دائمًا. (I96919، b/419208471)
  • تحسين ActionBarContextView وAppCompatDelegateImpl (Ia83b3)
  • تستخدم هذه المكتبة الآن تعليقات توضيحية بشأن القيم الخالية من JSpecify، وهي تعليقات توضيحية خاصة باستخدام النوع. على مطوّري Kotlin استخدام وسيطتَي المترجم البرمجي التاليتَين لفرض الاستخدام الصحيح: -Xjspecify-annotations=strict و-Xtype-enhancement-improvements-strict-mode (Id9081 وb/326456246).
  • ضبط عنوان النافذة AlertDialogs لأغراض تسهيل الاستخدام (I8bbdd، b/347729115)
  • تمت إزالة التحديد اليدوي لإمكانية الوصول إلى واجهات برمجة التطبيقات الجديدة للمنصة لأنّ ذلك يحدث تلقائيًا من خلال تصميم واجهة برمجة التطبيقات عند استخدام R8 مع الإصدار 7.3 أو إصدار أحدث من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" (مثل الإصدار 3.3 من R8)، وجميع عمليات الإنشاء عند استخدام الإصدار 8.1 أو إصدار أحدث من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" (مثل الإصدار 8.1 من D8). ننصح العملاء الذين لا يستخدمون "مكوّن Android الإضافي لبرنامج Gradle" بالترقية إلى الإصدار 8.1 أو إصدار أحدث من D8. يُرجى مراجعة هذه المقالة للاطّلاع على مزيد من التفاصيل. (I9496c، b/345472586)
  • ضبط fontVariationSettings بشكل صحيح من textAppearance في AppCompat مشاهدة (I20d06، b/264321145)
  • إرسال تغييرات الإعداد في AppCompatActivity إلى شجرة العرض (Ibece8، b/321896385)
  • تتطلّب المشاريع التي تم إصدارها باستخدام Kotlin 2.0 استخدام الإصدار 2.0.0 أو إصدار أحدث من KGP (Idb6b5، b/344563182)
  • إصلاح عملية احتساب ارتفاع شريط الأدوات لتضمين الهوامش العمودية للعنوان/العنوان الفرعي (Ia5846، b/267200424)

الإصدار 1.7

الإصدار 1.7.1

‫4 يونيو 2025

تم طرح androidx.appcompat:appcompat:1.7.1 وandroidx.appcompat:appcompat-resources:1.7.1. يتضمّن الإصدار 1.7.1 هذه التعديلات.

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

  • تم تعديل AppCompat لاستخدام الإصدار 1.8.0 من Activity للسماح له باستخدام واجهة برمجة التطبيقات initializeViewTreeOwners() من ComponentActivity لضمان ضبط ViewTreeOwners الصحيح دائمًا. يحلّ هذا الإصلاح مشكلة عدم التوافق بين AppCompatActivity وNavigationEvent والمكتبات التي تعتمد عليه، مثل Navigation 3. (I96919، b/419208471)

الإصدار 1.7.0

‫29 مايو 2024

تم طرح androidx.appcompat:appcompat:1.7.0 وandroidx.appcompat:appcompat-resources:1.7.0. يتضمّن الإصدار 1.7.0 هذه التعديلات.

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

  • تعمل السمة AppCompatDialog الآن على ضبط LifecycleOwner وSavedStateRegistryOwner وOnBackPressedDispatcherOwner بشكل صحيح في طريقة عرض عناصر واجهة المستخدم الخاصة بمربّع الحوار من خلال واجهات برمجة التطبيقات ViewTree، ما يؤدي إلى حلّ المشاكل عند استضافة ComposeView ضِمن AppCompatDialog.
  • تضبط AppCompatActivity الآن ViewTreeOnBackPressedDispatcherOwner حتى يمكن استرداد أداة إرسال البيانات من العرض.
  • تم تحسين أداء SupportMenuInflater بشكل كبير.
  • يعرض Locale.getDefault() الآن اللغة المحلية للنظام بعد التشغيل على البارد.
  • تحتفظ LinearLayoutCompat الآن بمَعلمات تنسيق الهامش.

تحديثات الاعتماديات

  • يعتمد AppCompat الآن على الإصدار 1.7.0 من Activity.
  • يعتمد AppCompat الآن على الإصدار 1.5.4 من Fragment.

الإصدار ‎1.7.0-rc01

‫14 مايو 2024

تم طرح androidx.appcompat:appcompat:1.7.0-rc01 وandroidx.appcompat:appcompat-resources:1.7.0-rc01. يتضمّن الإصدار 1.7.0-rc01 هذه التعديلات.

الإصدار ‎1.7.0-beta01

‫1 مايو 2024

تم طرح androidx.appcompat:appcompat:1.7.0-beta01 وandroidx.appcompat:appcompat-resources:1.7.0-beta01. يتضمّن الإصدار 1.7.0-beta01 هذه التعديلات.

الإصدار ‎1.7.0-alpha03

‫26 يوليو 2023

تم طرح androidx.appcompat:appcompat:1.7.0-alpha03 وandroidx.appcompat:appcompat-resources:1.7.0-alpha03. يتضمّن الإصدار 1.7.0-alpha03 هذه التعديلات.

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

  • إتاحة الحصول على لغات كل تطبيق في سياقات غير سياقات النشاط (I58e753) تمت إضافة أربع واجهات برمجة تطبيقات جديدة لهذه الميزة:

    • LocaleManagerCompat.getApplicationLocales(): لكي يتمكّن المطوّرون من الحصول على لغات خاصة بكل تطبيق خارج نطاق النشاط

    • ContextCompat.getString(): لعرض سلاسل مترجَمة استنادًا إلى اللغات المحدّدة لكل تطبيق

    • ContextCompat.getContextForLanguage(): سيراعي السياق الذي تعرضه هذه الطريقة اللغات الخاصة بكل تطبيق.

    • ConfigurationCompat.setLocales(): لضبط اللغة المحلية للإعدادات في واجهات برمجة التطبيقات المذكورة أعلاه

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

  • تمت إضافة setLineHeight(unit, lineHeight) إلى فئات التوافق TextView (Ia9fa9)
  • تمت إضافة setLineHeight(unit, lineHeight) إلى فئات التوافق TextView (Ib2ee1)
  • تمت إضافة setLineHeight(unit, lineHeight) إلى فئات التوافق TextView (I15716)

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

  • تعمل السمة AppCompatDialog الآن على ضبط LifecycleOwner وSavedStateRegistryOwner وOnBackPressedDispatcherOwner بشكل صحيح في طريقة عرض عناصر واجهة المستخدم الخاصة بمربّع الحوار من خلال واجهات برمجة التطبيقات ViewTree، ما يؤدي إلى حلّ المشاكل عند استضافة ComposeView ضِمن AppCompatDialog. يعتمد AppCompat الآن على الإصدار 1.7.0 من Activity. (Ib28ab، b/261314581)
  • تحسين أداء SupportMenuInflater بشكل كبير (I0b087)

الإصدار ‎1.7.0-alpha02

‫8 شباط (فبراير) 2023

تم طرح androidx.appcompat:appcompat:1.7.0-alpha02 وandroidx.appcompat:appcompat-resources:1.7.0-alpha02. يتضمّن الإصدار 1.7.0-alpha02 هذه التعديلات.

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

  • تم إصلاح تسرّب الذاكرة في AppCompatDelegate.getLocaleManagerForApplication() (44b57fd)
  • يعتمد AppCompat الآن على الإصدار 1.5.4 من Fragment (I54dcd)

الإصدار ‎1.7.0-alpha01

‫5 أكتوبر 2022

تم طرح androidx.appcompat:appcompat:1.7.0-alpha01 وandroidx.appcompat:appcompat-resources:1.7.0-alpha01. يتضمّن الإصدار 1.7.0-alpha01 هذه التعديلات.

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

  • تضبط AppCompatActivity الآن ViewTreeOnBackPressedDispatcherOwner حتى يمكن استرداد أداة إرسال البيانات من العرض. (I1a115، b/235416503)
  • تعرض الدالة Locale.getDefault() الآن اللغة المحلية للنظام بعد التشغيل على البارد (I6a94b)
  • تحتفظ LinearLayoutCompat الآن بمعلَمات تخطيط الهامش (Id2af4)

الإصدار 1.6.1

الإصدار 1.6.1

‫8 شباط (فبراير) 2023

تم طرح androidx.appcompat:appcompat:1.6.1 وandroidx.appcompat:appcompat-resources:1.6.1. يتضمّن الإصدار 1.6.1 هذه التعديلات.

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

  • تم إصلاح تسرّب الذاكرة في AppCompatDelegate.getLocaleManagerForApplication() (44b57fd)

الإصدار 1.6.0

الإصدار 1.6.0

‫11 يناير 2023

تم طرح androidx.appcompat:appcompat:1.6.0 وandroidx.appcompat:appcompat-resources:1.6.0. يتضمّن الإصدار 1.6.0 هذه التعديلات.

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

الإصدار 1.6.0-rc01

‫7 أيلول (سبتمبر) 2022

تم طرح androidx.appcompat:appcompat:1.6.0-rc01 وandroidx.appcompat:appcompat-resources:1.6.0-rc01. يتضمّن الإصدار 1.6.0-rc01 هذه التعديلات.

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

  • تضبط AppCompatActivity الآن ViewTreeOnBackPressedDispatcherOwner حتى يمكن استرداد أداة الإرسال من العرض. (I1a115، b/235416503)
  • تم التراجع عن إصلاح خطأ أدّى إلى الكتابة فوق الإعدادات التي تم تمريرها إلى onConfigurationChanged، ما تسبّب في حدوث مشاكل في الاختبارات التي أدرجت إعداداتها المخصّصة من خلال onConfigurationChanged.

الإصدار 1.6.0-beta01

‫10 أغسطس 2022

تم طرح androidx.appcompat:appcompat:1.6.0-beta01 وandroidx.appcompat:appcompat-resources:1.6.0-beta01. يتضمّن الإصدار 1.6.0-beta01 هذه التعديلات.

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

  • نقل فئات التوافق DrawableWrapper وDrawableContainer وStateListDrawable إلى واجهة برمجة التطبيقات العامة (I37f3e، b/227789566)
  • تُقدّم هذه السمة مصنعًا جديدًا لبرنامج تضخيم التنسيق غير المتزامن. (Ia657b)

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

  • سيتم الآن استدعاء Toolbar قبل عرض القائمة بدلاً من استدعائها بشكل غير مشروط عند إنشاء القائمة.onPrepareMenu() (I2a58d، b/232206677)
  • يعتمد AppCompat الآن بشكل صريح على Lifecycle 2.5.1 وSavedState 1.2.0. (I7e3e2)
  • تمت إضافة إمكانية استخدام معاودة الاتصال التي يتم استدعاؤها عند الرجوع إلى AppCompatDelegate وتنفيذ شريط الأدوات الذي توفّره AppCompat. (I24062)
  • وضع اللمسات الأخيرة على واجهات برمجة التطبيقات AppCompat للإصدار 1.5.0-beta01 (I2a43d، b/236866227)
  • وضع اللمسات الأخيرة على واجهات برمجة التطبيقات AppCompat للإصدار 1.5.0-beta01 (I2a43d، b/236866227)

الإصدار ‎1.6.0-alpha05

‫15 يونيو 2022

تم طرح androidx.appcompat:appcompat:1.6.0-alpha05 وandroidx.appcompat:appcompat-resources:1.6.0-alpha05. تم تطوير الإصدار 1.6.0-alpha05 في فرع خاص قبل الإصدار العلني، ولا يتضمّن أي عمليات إرسال علنية.

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

  • تعديلات على إمكانية قبول القيم الفارغة لتتوافق مع مساحة واجهة برمجة التطبيقات النهائية في الإصدار التجريبي الثالث من حزمة تطوير البرامج (SDK) لنظام التشغيل Tiramisu
  • أصبح minCompileSdk الآن 33 ليتوافق مع الإصدار التجريبي 3 من حزمة تطوير البرامج (SDK) لنظام التشغيل Tiramisu

الإصدار 1.6.0-alpha04

‫18 مايو 2022

تم طرح androidx.appcompat:appcompat:1.6.0-alpha04 وandroidx.appcompat:appcompat-resources:1.6.0-alpha04. تم تطوير هذه المكتبة باستخدام إصدار تجريبي خاص، لذا لا يتوفّر سجلّ عمليات الإيداع.

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

  • إضافة واجهة برمجة تطبيقات لتجاوز قيود عرض SwitchCompat لاستخدامها من قِبل MDC-Android

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

  • تجنُّب الإعدادات المُدارة عند تغيير الإعدادات خارج attachBaseConfig

الإصدار ‎1.6.0-alpha03

‫27 نيسان (أبريل) 2022

تم طرح androidx.appcompat:appcompat:1.6.0-alpha03 وandroidx.appcompat:appcompat-resources:1.6.0-alpha03.

يتطلّب هذا الإصدار الإصدار التجريبي الأول من Android 13 لتجميع التطبيق، وليس هناك ما يضمن توافقه مع الإصدارات التجريبية المستقبلية.

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

  • إتاحة اختيار لغة مخصّصة على مستوى التطبيق من خلال AppCompatDelegate.setApplicationLocales() يتم تفويض التنفيذ إلى النظام الأساسي على المستوى 33 لواجهة برمجة التطبيقات والإصدارات الأحدث.

الإصدار 1.6.0-alpha01

‫23 فبراير 2022

تم طرح androidx.appcompat:appcompat:1.6.0-alpha01 وandroidx.appcompat:appcompat-resources:1.6.0-alpha01. تم إنشاء الإصدار ‎1.6.0-alpha01 من فرع داخلي ولا يتضمّن تعديلات مرئية للجميع.

يتطلّب هذا الإصدار Android Tiramisu DP1 للتجميع، ولا يُضمَن أن يكون متوافقًا مع إصدارات المعاينة المستقبلية للمطوّرين في وقت التشغيل.

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

الإصدار 1.5.1

الإصدار 1.5.1

‫7 أيلول (سبتمبر) 2022

تم طرح androidx.appcompat:appcompat:1.5.1 وandroidx.appcompat:appcompat-resources:1.5.1. يتضمّن الإصدار 1.5.1 هذه التعديلات.

تحديثات الاعتماديات

الإصدار 1.5.0

الإصدار 1.5.0

‫10 أغسطس 2022

تم طرح androidx.appcompat:appcompat:1.5.0 وandroidx.appcompat:appcompat-resources:1.5.0. يتضمّن الإصدار 1.5.0 هذه التعديلات.

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

  • يتضمّن هذا الإصدار الثابت تحسينات على ثبات الوضع الداكن، وإصلاحات للأخطاء، ودعم تلوين الرسومات القابلة للرسم المركّبة لعناصر واجهة المستخدم النصية المستندة إلى AppCompat، وتحسينات على سهولة استخدام واجهة برمجة التطبيقات. للاطّلاع على قائمة مفصّلة بالتغييرات، يُرجى الرجوع إلى ملاحظات الإصدار السابقة من السلسلة 1.5.0.

الإصدار 1.5.0-rc01

‫27 يوليو 2022

تم طرح androidx.appcompat:appcompat:1.5.0-rc01 وandroidx.appcompat:appcompat-resources:1.5.0-rc01. يتضمّن الإصدار 1.5.0-rc01 هذه التعديلات.

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

  • تم إصلاح مشكلة إعادة استخدام برنامج تضمين سياق AppCompat لتنفيذ الموارد الأساسية لسياق التطبيق، ما أدّى إلى الكتابة فوق uiMode في سياق التطبيق. (Idf9d5)

الإصدار ‎1.5.0-beta01

‫13 يوليو 2022

تم طرح androidx.appcompat:appcompat:1.5.0-beta01 وandroidx.appcompat:appcompat-resources:1.5.0-beta01. يتضمّن الإصدار 1.5.0-beta01 هذه التعديلات.

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

  • أضِف علامة قابلة للتجاهل لإيقاف التعديل التلقائي لعرض مفتاح التبديل. (I37cb7)
  • إضافة التعليق التوضيحي @FloatRange إلى واجهة برمجة التطبيقات الخاصة بالحصول على موضع الصورة المصغّرة (If524c)
  • إضافة تعليقات توضيحية بشأن إمكانية قبول القيم الفارغة إلى AnimatedStateListDrawableCompat (Ieb4ec)

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

  • وضع اللمسات الأخيرة على واجهات برمجة التطبيقات AppCompat للإصدار 1.5.0-beta01 (I2a43d، b/236866227)
  • تغيير قيمة className لـ ActionMenuItemView من أجل التعامل معها كـ Button (I5ee1c)

الإصدار ‎1.5.0-alpha01

‫6 أبريل 2022

تم طرح androidx.appcompat:appcompat:1.5.0-alpha01 وandroidx.appcompat:appcompat-resources:1.5.0-alpha01. يتضمّن الإصدار 1.5.0-alpha01 هذه التعديلات.

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

  • تمت إضافة واجهة برمجة تطبيقات جديدة لعرض موضع زر التبديل لفئات فرعية (I9bfb4)
  • تم تعديل إمكانية قبول القيم الفارغة لتتوافق مع الإصدار التجريبي الثاني من Tiramisu (I0cbb7)
  • تمت إعادة تطبيق تلوين الرسومات القابلة للرسم المركّبة على التطبيقات المصغّرة المستندة إلى TextView (Idf98c، b/165822337)
  • تتضمّن AppCompatDialog الآن ComponentDialog لتحقيق التوافق مع OnBackPressedDispatcher (Id9b91، b/217620781)
  • تمت إضافة مستوى ظهور محمي إلى SearchView.onQueryRefine() للسماح بتجاهل الإعدادات (I6cce0، b/212882845)

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

  • يستدعي AppCompat Toolbar الآن واجهة برمجة التطبيقات onPrepareMenu() الخاصة بـ MenuHostHelper. (I9b9b5، b/227376894)
  • لن تتم إعادة ضبط AppCompatEditText وAppCompatAutoCompleteEditText وAppCompatMultiAutoCompleteEditText على القيمتين clickable أو longClickable في الدالة الإنشائية عند ضبطها في تنسيق XML (Ic5066 وb/221094907)
  • لن تستدعي AppCompatEditText وAppCompatAutoCompleteTextView وAppCompatMultiAutoCompleteTextView الدالة setKeyListener التي تم تجاوزها أثناء الدالة الإنشائية (I5c13a، b/208480173)
  • لن يغلّف Appcompat مثيلات NumberKeyListener التي تم تمريرها إلى setKeyListener، ما يسمح لـ TextView بضبط اللغة بشكل صحيح على NumberKeyListeners (Ibf113، b/207119921).
  • تم إصلاح مشكلة في جميع الفئات الفرعية NumberKeyListener التي تم تقديمها في AppCompat 1.4.0 والتي سمحت بإدخال أحرف غير متوقّعة، مثل علامات الترقيم (Iede7a، b/207119921)

الإصدار 1.4.2

الإصدار 1.4.2

‫1 يونيو 2022

تم طرح androidx.appcompat:appcompat:1.4.2 وandroidx.appcompat:appcompat-resources:1.4.2. يتضمّن الإصدار 1.4.2 هذه التعديلات.

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

  • تم إصلاح عُطل كان يحدث عندما كان AppCompatDelegateImpl يجري عملية استدعاء داخلية إلى ensureSubDecor قبل إنشاء شريط الإجراءات (aosp/2048349، b/226648941)

الإصدار 1.4.1

‫12 يناير 2022

تم طرح androidx.appcompat:appcompat:1.4.1 وandroidx.appcompat:appcompat-resources:1.4.1. يتضمّن الإصدار 1.4.1 هذه التعديلات.

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

  • لن تستدعي AppCompatEditText وAppCompatAutoCompleteTextView وAppCompatMultiAutoCompleteTextView الدالة setKeyListener التي تم تجاهلها أثناء طريقة وضع التصميم. (I5c13a، b/208480173)
  • لن يتم تضمين Emoji2 في مثيلات NumberKeyListener، ما يتيح إعداد اللغة من خلال طريقة العرض النصية.
    • لن يغلّف Appcompat مثيلات NumberKeyListener التي تم تمريرها إلى setKeyListener، ما يتيح لـ TextView ضبط اللغة بشكل صحيح على NumberKeyListeners. (Ibf113، b/207119921)
  • تم إصلاح مشكلة في جميع الفئات الفرعية من NumberKeyListener تم تقديمها في الإصدار 1.4.0 من حزمة appcompat، والتي كانت تسمح بإدخال أحرف غير متوقّعة، مثل علامات الترقيم (b/207119921) (Iede7a، b/207119921)

الإصدار 1.4.0

الإصدار 1.4.0

‫17 نوفمبر 2021

تم طرح androidx.appcompat:appcompat:1.4.0 وandroidx.appcompat:appcompat-resources:1.4.0. يتضمّن الإصدار 1.4.0 هذه التعديلات.

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

  • تستهدف المكتبة الآن مستوى لغة Java 8
  • يتم تفعيل إمكانية استخدام رموز الإيموجي القابلة للتحديث تلقائيًا من خلال مكتبة androidx.emoji2
  • تحسين فحص السمات في "أداة فحص التنسيق" في "استوديو Android" (I02d55)
  • تمت إضافة دعم للموارد المتداخلة ذات درجات الألوان ورسومات المتجهات القابلة للرسم في عمليات النقل الخلفي لتحميل موارد AppCompat. ومع ذلك، تجدر الإشارة إلى أنّ هذا يعني أنّه لا يمكن للتطبيقات إلغاء getDrawable() في عنصر Resources مخصّص عند تفعيل عمليات النقل إلى الإصدارات القديمة. (Ia6b03، b/176129022)
  • إضافة ميزة إمكانية تلوين الخلفية وعلامة الاختيار إلى CheckedTextView (I8575c)

الإصدار ‎1.4.0-rc01

‫27 أكتوبر 2021

تم طرح androidx.appcompat:appcompat:1.4.0-rc01 وandroidx.appcompat:appcompat-resources:1.4.0-rc01. يتضمّن الإصدار 1.4.0-rc01 هذه التعديلات.

الإصدار ‎1.4.0-beta01

‫29 سبتمبر 2021

تم طرح androidx.appcompat:appcompat:1.4.0-beta01 وandroidx.appcompat:appcompat-resources:1.4.0-beta01. يتضمّن الإصدار 1.4.0-beta01 هذه التعديلات.

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

  • أصبحت حزمة AndroidX AppCompat Toolbar الآن MenuHost ويمكنها إدارة MenuProvider. (I5cd95)

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

  • إصلاح طريقة تعامل AppCompatProgressBar مع أشرطة التقدّم في قائمة الطبقات (I6ece3، b/142004509)
  • تم إصلاح الخطأ 193047889 الذي تم تقديمه في AppCompat 1.4.0-alpha03 من خلال الاحتفاظ بشكل صحيح بـ android:digits في AppCompatEditText. (I4b4fc، b/193047889)
  • تم دمج حزمة OnReceiveContentListener SDK وواجهات برمجة التطبيقات الخاصة بمكتبة الدعم. (Ic6914، b/173814913)

الإصدار 1.4.0-alpha03

‫30 حزيران (يونيو) 2021

تم طرح androidx.appcompat:appcompat:1.4.0-alpha03 وandroidx.appcompat:appcompat-resources:1.4.0-alpha03. يتضمّن الإصدار 1.4.0-alpha03 هذه التعديلات.

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

  • تستهدف المكتبة الآن مستوى لغة Java 8
  • إضافة توافق emoji2 مع المزيد من الفئات الفرعية لـ TextView (AppCompatMultiAutoCompleteTextView وAppCompatAutoCompleteTextView وAppCompatRadioButton وAppCompatCheckBox)

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

  • تمت إضافة واجهة برمجة تطبيقات لإعداد InputConnection لاستخدام View.performReceiveContent من أجل معالجة طلبات IME إلى InputConnection.commitContent. (I3a2ad)
  • إضافة دعم EmojiCompat إلى AppCompatMultiAutoCompleteTextView (Ifece0)
  • إضافة توافق EmojiCompat مع AppCompatAutoCompleteTextView (Ia1f4b)
  • إضافة دعم EmojiCompat إلى AppCompatRadioButton (If08af)
  • إتاحة توافق EmojiCompat مع AppCompatCheckBox (I2b3bc)
  • السماح بقيمة فارغة KeyListener في AppCompatEditText يؤدي ذلك إلى إلغاء التعليق التوضيحي غير الفارغ الذي تمت إضافته إلى AppCompatEditText في الإصدار 1.4-alpha01، واستعادة السلوك السابق عند تمرير قيمة فارغة. (I21482، b/189559345)
  • إضافة PopupMenu.setForceShowIcon لتحقيق التكافؤ مع واجهات برمجة التطبيقات على المنصة (I43bb3، b/182789798)

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

  • إصلاح الخطأ في AppCompatEditText الذي سيؤدي إلى إعادة ضبط inputType المحدّد في XML لإزالة الاختلافات تم تقديم هذا الخطأ في AppCompat 1.4.0-alpha01. (I9df36، b/191061070)

الإصدار 1.4.0-alpha02

‫2 حزيران (يونيو) 2021

تم طرح androidx.appcompat:appcompat:1.4.0-alpha02 وandroidx.appcompat:appcompat-resources:1.4.0-alpha02. يتضمّن الإصدار 1.4.0-alpha02 هذه التعديلات.

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

  • تمت إضافة الدالة الإنشائية AppCompatDialogFragment التي تأخذ معرّف تخطيط (Icbf22، b/188119987)
  • تحسين مستوى الدعم لأداة فحص التنسيق (I02d55)
  • تمت إعادة تسمية الحزمة في emoji2-views-helper إلى androidx.emoji2.viewsintegration. هذا تغيير قد يؤدي إلى عطل في AppCompat 1.4.0-alpha01، ويجب أن تتأكّد التطبيقات من تعديل الاعتمادية على AppCompat إلى أحدث إصدار من emoji2. (Ie8397)

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

  • تم إصلاح المشكلة التي كانت تتسبّب في عدم تلقّي الأنشطة المتوقّفة تغييرات في الإعدادات من تغييرات الوضع الليلي التي تم إعدادها باستخدام AppCompat. (I8fa8f، b/188681415)
  • تم إصلاح الخطأ في AppCompatEditText الذي كان يتسبب في إمكانية تركيز العرض حتى عند تحديد android:focusable="false" في ملف XML (تم إدخال الخطأ في AppCompat 1.4.0-alpha01) (Ib9412)

الإصدار 1.4.0-alpha01

‫18 أيار (مايو) 2021

تم طرح androidx.appcompat:appcompat:1.4.0-alpha01 وandroidx.appcompat:appcompat-resources:1.4.0-alpha01. يتضمّن الإصدار 1.4.0-alpha01 هذه التعديلات.

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

  • تم دمج توافق EmojiCompat مع مجموعة متنوعة من أدوات AppCompat (Id409b وIf7a1a وIc262d وIb5f4a وI4fb3c)
  • تمت إضافة دعم للموارد المتداخلة ذات درجات الألوان ورسومات المتجهات القابلة للرسم في عمليات النقل الخلفي لتحميل موارد AppCompat. ومع ذلك، تجدر الإشارة إلى أنّ هذا يعني أنّه لا يمكن للتطبيقات تجاهل getDrawable() في عنصر "الموارد" المخصّص عند تفعيل عمليات النقل إلى الإصدارات القديمة. (Ia6b03، b/176129022)
  • تحسين توافق أداة فحص التنسيق (I6d771)

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

  • تم إصلاح سيناريو يؤدي فيه استدعاء setSupportActionBar بعد ضبط معاودة الاتصال بالنافذة إلى الكتابة فوق معاودة الاتصال. (Ie43ee، b/186791590)
  • تمت إضافة حلّ بديل لمشكلة في حِزمتَي SDK 29 و30، حيث لا يتم تحميل لون تلقائي لموارد ColorStateListDrawable المستنسَخة من ذاكرة التخزين المؤقت للعناصر القابلة للرسم إلى أن يتم تغيير الحالة. (Iedb4b)
  • تجنُّب الخطأ NPE عند التعامل مع عمليات ردّ الاتصال لوضع إجراء التحديد المخصّص الفارغ في طرق العرض المستندة إلى AppCompat (I033c7، b/173435375)

تحديثات الاعتماديات

المساهمة الخارجية

  • إضافة خلفية قابلة للتلوين وعلامة اختيار إلى CheckedTextView (I8575c)

الإصدار 1.3.1

الإصدار 1.3.1

‫21 تموز (يوليو) 2021

تم طرح androidx.appcompat:appcompat:1.3.1 وandroidx.appcompat:appcompat-resources:1.3.1. يتضمّن الإصدار 1.3.1 هذه التعديلات.

تحديثات الاعتماديات

  • تعتمد AppCompat الآن على Activity 1.2.4 وFragment 1.3.6، ما يجعل الإصلاحات من تلك الإصدارات مضمّنة تلقائيًا عند استخدام AppCompat 1.3.1. (I8fbec)

الإصدار 1.3.0

الإصدار 1.3.0

‫18 أيار (مايو) 2021

تم طرح androidx.appcompat:appcompat:1.3.0 وandroidx.appcompat:appcompat-resources:1.3.0. يتضمّن الإصدار 1.3.0 هذه التعديلات.

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

  • تم إصلاح عملية نشر سمات android:theme على مستوى تصاميم <include>d على الأجهزة التي تعمل بإصدارات Android أقدم من Lollipop
  • تقليل حجم المكتبة من خلال تحويل العديد من موارد PNG إلى VectorDrawables
  • إضافة إمكانية سحب الأحداث وإفلاتها في AppCompatEditText باستخدام OnReceiveContentListener
  • تم التحديث لدعم التغييرات في معالجة المساحات الداخلية للنوافذ في Android 11
  • إتاحة استخدام اللغة من اليمين إلى اليسار في عناصر القائمة التي تتضمّن رموزًا
  • تمت إضافة إمكانية إدراج محتوى منسّق (مثل لصق صورة) في AppCompatEditText

  • الاعتماديات المعدَّلة: عدَّلت appcompat العديد من الاعتماديات المتعدّية لتوفير وظائف وإصلاحات جديدة:

    • تم التعديل من Fragment 1.1.0 إلى Fragment 1.3.4
    • تم التحديث من الإصدار 1.0.0 من "النشاط" إلى الإصدار 1.2.3 من "النشاط"
    • تم التعديل من Lifecycle 2.0.0 إلى Lifecycle 2.3.1.
    • تم التعديل من الإصدار 1.3.0 من Core إلى الإصدار Core 1.5.0

الإصدار 1.3.0-rc01

‫24 مارس 2021

تم طرح androidx.appcompat:appcompat:1.3.0-rc01 وandroidx.appcompat:appcompat-resources:1.3.0-rc01. يتضمّن الإصدار 1.3.0-rc01 هذه التعديلات.

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

  • يمنع إلغاء الأذونات قبل الأوان عند التعامل مع إدراج محتوى محرر أسلوب الإدخال

تحديثات الاعتماديات

المساهمة الخارجية

  • تم إصلاح عملية نشر السمة android:theme على مستوى تصاميم <include>d على الأجهزة التي تعمل بإصدارات أقدم من Lollipop (Simon Bergner في Opera)

الإصدار 1.3.0-beta01

13 كانون الثاني (يناير) 2021

تم طرح androidx.appcompat:appcompat:1.3.0-beta01 وandroidx.appcompat:appcompat-resources:1.3.0-beta01. يتضمّن الإصدار 1.3.0-beta01 هذه التعديلات.

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

  • تم استبدال العناصر القابلة للرسم في وضع الإجراء على مستوى المظهر بمصادر متجهة. قد يؤدي ذلك إلى حدوث تغييرات طفيفة في المظهر المرئي للرموز الفردية. (I741a6)

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

  • تم دمج ميزة السحب والإفلات (أحداث الإفلات) في AppCompatEditText باستخدام OnReceiveContentListener. (Ib26c9، b/175343405)
  • تم تعديل OnReceiveContentListener وواجهات برمجة التطبيقات ذات الصلة. لمزيد من التفاصيل، يمكنك الاطّلاع على تغييرات مكتبة androidx.core. (Ib4616، b/173814913)
  • تم نقل الفئة widget.RichContentReceiverCompat إلى view.OnReceiveContentListener. (Ifdab7، b/173814913)
  • تم نقل واجهات برمجة التطبيقات الخاصة بتوفير النص المحيط الأوّلي واسترداده إلى الإصدار EditorInfoCompat. تسمح هذه الطريقة لتطبيقات أداة IME بتجنُّب وقت استجابة إضافي في عملية التواصل البيني للعمليات (IPC). (Ie3809)

الإصدار 1.3.0-alpha02

19 آب (أغسطس) 2020

تم طرح androidx.appcompat:appcompat:1.3.0-alpha02 وandroidx.appcompat:appcompat-resources:1.3.0-alpha02. يتضمّن الإصدار 1.3.0-alpha02 هذه التعديلات.

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

  • تم استبدال عناصر PNG القابلة للرسم في AppCompatRatingBar بمصادر متجهة. قد يؤدي ذلك إلى حدوث تغييرات طفيفة في المظهر المرئي للنجوم الفردية. (I6b99d)
  • تعديل WindowInsetsCompat لتتوافق مع واجهات برمجة التطبيقات في Android 11 (I3df9e)
  • إتاحة عرض عناصر القائمة التي تتضمّن رموزًا من اليمين إلى اليسار (I2f5c5)

تحديثات الاعتماديات

  • تم تعديل تبعية AppCompat من Fragment 1.1.0 إلى Fragment 1.3.0-alpha08. ننصحك بشدة بقراءة ملاحظات إصدار Fragment 1.2.0 للتعرّف على التغييرات الرئيسية التي تم إدخالها في إصدار Fragment السابق.
  • تم تعديل تبعية AppCompat من Activity 1.0.0 إلى Activity 1.2.0-alpha08. ننصحك بشدة بقراءة ملاحظات إصدار 1.1.0 "النشاط" للتعرّف على التغييرات الرئيسية التي تمّ إدخالها في إصدار "النشاط" السابق.
    • تستخدم AppCompatActivity الآن واجهة برمجة التطبيقات OnContextAvailableListener التي تم تقديمها في النشاط 1.2.0-alpha08 لإعداد AppCompatDelegate. سيتم تنفيذ أي متتبِّعات تمت إضافتها إلى الفئات الفرعية من AppCompatActivity بعد تنفيذ هذه المتتبِّعة. (I513da)

الإصدار 1.3.0-alpha01

20 أيار (مايو) 2020

تم طرح androidx.appcompat:appcompat:1.3.0-alpha01 وandroidx.appcompat:appcompat-resources:1.3.0-alpha01. يتضمّن الإصدار 1.3.0-alpha01 هذه التعديلات.

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

  • إضافة قاعدة Lint جديدة للإبلاغ عن طلبات إلى setActionBar في الأنشطة التي توسّع AppCompatActivity
  • تمت إضافة دعم لـ ViewTreeLifecycleOwner من Lifecycle 2.3.0-alpha01 وViewTreeViewModelStoreOwner من Lifecycle 2.3.0-alpha03 وViewTreeSavedStateRegistryOwner من SavedState 1.1.0-alpha01 عند استخدام View ضِمن AppCompatActivity. (b/151603528 وaosp/1300264)
  • إضافة واجهة برمجة تطبيقات شائعة لإدراج محتوى وافٍ (مثل لصق صورة) توفّر الدالة الجديدة API واحدًا يمكن للتطبيقات تنفيذه لتوفير طرق مختلفة لإدراج المحتوى الوافي. في الوقت الحالي، تتم إضافة واجهة برمجة التطبيقات إلى AppCompatEditText فقط وسيتم استدعاؤها لمسارات الرموز التالية:
    • اللصق من الحافظة
    • إدراج المحتوى من أداة IME (InputConnection.commitContent) (I22bf7)

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

  • من AppCompat 1.2.0-rc01: لم يعُد AppCompat يستدعي onMenuOpened() باستخدام قائمة null. (b/142843126)
  • حلّ ألوان الروابط النصية والتلميحات بشكل صحيح على الأجهزة القديمة عند استدعاء TextViewCompat.setTextAppearance باستخدام نمط مظهر نصي يتضمّن قوائم حالة الألوان التي تشير إلى سمات ألوان المظهر (b/154702995)

الإصدار 1.2.0

الإصدار 1.2.0

‫5 آب (أغسطس) 2020

تم طرح androidx.appcompat:appcompat:1.2.0 وandroidx.appcompat:appcompat-resources:1.2.0. يتضمّن الإصدار 1.2.0 هذه التعديلات.

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

  • تم إصلاح المشاكل المتعلّقة بحالات استخدام تجاوز الإعدادات، بما في ذلك اللغات المخصّصة ومقاييس الخطوط. يمكنك الاطّلاع هنا على مثال حول كيفية تنفيذ عمليات الإلغاء بشكلٍ صحيح باستخدام appcompat:1.2.0.
  • تم إيقاف AppCompatDelegate.attachBaseContext() نهائيًا. إذا كنت بصدد طلب هذه الطريقة أو إلغائها، استخدِم AppCompatDelegate.attachBaseContext2() بدلاً من ذلك.
  • تم إيقاف CollapsibleActionView نهائيًا. لم تعُد هذه الواجهة مطلوبة، لذا استخدِم واجهة android.view.CollapsibleActionView التي توفّرها المنصة.

الإصدار ‎1.2.0-rc02

‫22 تموز (يوليو) 2020

تم طرح androidx.appcompat:appcompat:1.2.0-rc02 وandroidx.appcompat:appcompat-resources:1.2.0-rc02. يتضمّن الإصدار 1.2.0-rc02 هذه التعديلات.

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

  • تم إصلاح مشكلة متعلّقة بالوضع الداكن حيث كان استدعاء AppCompatDelegate.setDefaultNightMode من مربّع حوار يؤدي أحيانًا إلى تعذُّر إعادة إنشاء الأنشطة وتطبيق الوضع الجديد. (aosp/1348308 وb/158923881)

الإصدار 1.2.0-rc01

14 أيار (مايو) 2020

تم طرح androidx.appcompat:appcompat:1.2.0-rc01 وandroidx.appcompat:appcompat-resources:1.2.0-rc01. يتضمّن الإصدار 1.2.0-rc01 هذه التعديلات.

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

  • تم وضع علامة على AppCompatDelegate.setLocalNightMode للإشارة إلى أنّها تتطلّب الإصدار 17 أو إصدارًا أحدث من حزمة SDK بسبب مشكلة في النظام الأساسي تتسبّب في تسرُّب تغييرات الإعدادات بين الأنشطة في حِزم SDK السابقة.

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

  • قد يتم الاتصال بـ "AppCompatDelegate.setLocalNightMode" قبل "Activity.attachBaseContext"
  • تم إصلاح مشكلة استهلاك ActionBarOverlayLayout التي كانت تستخدم بشكل غير صحيح الحواف المخزّنة مؤقتًا
  • لم يعُد AppCompat يستدعي onMenuOpened() باستخدام قائمة null. (b/142843126)

الإصدار 1.2.0-beta01

1 نيسان (أبريل) 2020

تم طرح androidx.appcompat:appcompat:1.2.0-beta01 وandroidx.appcompat:appcompat-resources:1.2.0-beta01. يتضمّن الإصدار 1.2.0-beta01 هذه التعديلات.

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

  • تمت إضافة قواعد lint الجديدة التالية التي ستشير إلى الاستخدامات غير الصحيحة لـ AppCompat في السيناريوهات التالية:
    • تحميل قوائم حالات الألوان: يُقترح استخدام واجهات برمجة التطبيقات ContextCompat وAppCompatResources لتحقيق التوافق مع الإصدارات القديمة
    • تحميل الرسومات القابلة للرسم: يقترح استخدام واجهات برمجة التطبيقات ContextCompat وResourcesCompat للتوافق مع الإصدارات القديمة
    • استخدام قوائم حالة الألوان مع سمة ألفا: يتم وضع علامة على السمة android:alpha المفقودة التي ستؤدي إلى ظهور غير صحيح على بعض إصدارات النظام الأساسي
    • تلوين طرق عرض الصور: العلامات التي لا تستخدم app:tint والتي ستؤدي إلى ظهور غير صحيح على إصدارات النظام الأساسي القديمة
    • استخدام عناصر قابلة للرسم مركّبة وتلوين في طرق عرض النصوص: يقترح استخدام سمات وواجهات برمجة تطبيقات متوافقة مع الإصدارات القديمة

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

  • تم إصلاح مشكلة عدم إرسال ActionBarOverlayLayout (إجراء تزيين النافذة) إلى WindowInsets بشكلٍ صحيح.
  • تم إصلاح مشاكل في تلوين العناصر القابلة للرسم ومظهر النص على الإصدارات القديمة من النظام الأساسي
  • تم إصلاح المشكلة التي تتسبّب في تعطُّل androidx.appcompat:appcompat:1.1.0 عند الضغط مع الاستمرار على مكوّن عرض محتوى الويب (b/141351441)
  • تم تنفيذ إصلاحات للمشاكل المتعلقة بمعالجة سياق التطبيق الأساسي واسترداد خدمات النظام أثناء بدء النشاط

الإصدار ‎1.2.0-alpha03

‫4 مارس 2020

تم طرح androidx.appcompat:appcompat:1.2.0-alpha03 وandroidx.appcompat:appcompat-resources:1.2.0-alpha03. يتضمّن الإصدار 1.2.0-alpha03 هذه التعديلات.

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

  • تم إصلاح مشكلة كانت تتسبّب في امتداد حارس حالة وضع الإجراء إلى شريط التنقّل بطريق الخطأ وظهوره بلون غير صحيح (Ia4a09).
  • تم حلّ المشكلة التي لم يتم فيها استئناف الأنشطة المتوقفة على المستوى 23 من واجهة برمجة التطبيقات والإصدارات الأقدم (I45201)

الإصدار 1.2.0-alpha02

‫29 يناير 2020

تم طرح androidx.appcompat:appcompat:1.2.0-alpha02 وandroidx.appcompat:appcompat-resources:1.2.0-alpha02. يتضمّن الإصدار 1.2.0-alpha02 هذه التعديلات.

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

  • تم إصلاح المشكلة التي تتسبّب في تعطُّل webview عند الضغط مع الاستمرار في appcompat 1.1.0 (b/141351441)
  • تم إصلاح تلوين الرسومات القابلة للرسم في TextView بالنسبة إلى الرسومات المركّبة القابلة للرسم على المستوى 23 من واجهة برمجة التطبيقات (aosp/1172194)
  • التأكّد من أنّ السياق الأساسي هو دائمًا برنامج تضمين (aosp/1194355)
  • أضفنا بعض التحسينات لتكون أكثر ذكاءً عند تعديل إعدادات السياق الأساسي (aosp/1204543)
  • تم إيقاف createConfigurationContext() في Robolectric (aosp/1186218)

الإصدار ‎1.2.0-alpha01

4 كانون الأول (ديسمبر) 2019

تم طرح androidx.appcompat:appcompat:1.2.0-alpha01 وandroidx.appcompat:appcompat-resources:1.2.0-alpha01. يتضمّن الإصدار 1.2.0-alpha01 هذه التعديلات.

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

  • لم تعُد عمليات استدعاء PackageManager.getActivityInfo تؤدي إلى حدوث أعطال في وضع التدقيق الصارم مع تفعيل عمليات التحقّق المتوافقة مع التشغيل
  • إصلاحات لعمليات تلوين العناصر القابلة للرسم في AppCompatButton
  • إصلاحات لمشاكل التلوين ومظهر النص على الإصدارات القديمة من المنصة

الإصدار 1.1.0

الإصدار 1.1.0

‫5 أيلول (سبتمبر) 2019

تم طرح androidx.appcompat:appcompat:1.1.0 وandroidx.appcompat:appcompat-resources:1.1.0. يمكنك الاطّلاع على التعديلات في هذا الإصدار هنا.

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

  • تحسينات على الوضع الداكن: تم إيقاف MODE_NIGHT_AUTO والتبديل بين الوضعين الداكن والفاتح استنادًا إلى الوقت الحالي. ننصحك باستخدام إعداد صريح أو MODE_NIGHT_AUTO_BATTERY.
  • Activity 1.0: يتم الآن توسيع AppCompatActivity بشكل متعدٍّ من ComponentActivity من Activity 1.0.0 عبر Fragment 1.1.0. راجِع ملاحظات الإصدار المرتبطة للحصول على معلومات حول التغييرات في كل مكتبة.
  • منشئ LayoutId في AppCompatActivity: يمكن الآن للفئات الفرعية من AppCompatActivity استدعاء منشئ في AppCompatActivity بشكل اختياري يأخذ معرّف R.layout، ما يشير إلى التنسيق الذي يجب ضبطه كطريقة عرض المحتوى كبديل لاستدعاء setContentView() في onCreate(). ولا يغيّر ذلك من شرط أن يكون لفئتك الفرعية دالة إنشاء بدون وسيطات.

الإصدار ‎1.1.0-rc01

2 تموز (يوليو) 2019

تم طرح androidx.appcompat:appcompat:1.1.0-rc01 وandroidx.appcompat:appcompat-resources:1.1.0-rc01. يمكنك الاطّلاع على التعديلات في هذا الإصدار هنا.

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

  • تتجاهل DayNight الآن configChanges بشكل صحيح (aosp/981105)
  • الاتصال فقط بـ onConfigurationChanged في الأنشطة التي تم بدؤها (aosp/987483)

الإصدار 1.1.0-beta01

‫5 يونيو 2019

تم طرح androidx.appcompat:appcompat:1.1.0-beta01 وandroidx.appcompat:appcompat-resources:1.1.0-beta01. يمكنك الاطّلاع على التعديلات في هذا الإصدار هنا.

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

  • التأكّد من محو أجهزة الاستقبال في AppCompatDialogs (aosp/959376)
  • إتاحة استخدام buttonGravity=center_vertical على شريط الأدوات (b/130361721)
  • إصلاح الإزاحة الأفقية لعنصر التحميل الدوّار (b/79477181)

الإصدار ‎1.1.0-alpha05

7 أيار (مايو) 2019

تم طرح androidx.appcompat:appcompat:1.1.0-alpha05 وandroidx.appcompat:appcompat-resources:1.1.0-alpha05. يمكنك الاطّلاع على التعديلات في هذا الإصدار هنا.

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

  • تعيد الدالة setDefaultNightMode() الآن إنشاء أي أنشطة تم بدؤها تلقائيًا.

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

  • إصلاحات متنوّعة للوضع الليلي/النهاري
  • إبطال المخطط التفصيلي عند أي تغيير في الخلفية في شريط الإجراءات
  • إصلاح مشكلة التمرير في التطبيق المصغّر الخاص بأداة الاختيار
  • إصلاح مشكلة استبدال خلفيات النوافذ المخصّصة في AlertDialog

الإصدار 1.1.0-alpha04

‫3 أبريل 2019

تم طرح androidx.appcompat:appcompat:1.1.0-alpha04 وandroidx.appcompat:appcompat-resources:1.1.0-alpha04. يمكنك الاطّلاع على التعديلات في هذا الإصدار هنا.

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

  • تمت إضافة مجموعة جديدة من سمات ThemeOverlay.AppCompat.DayNight. يجب استخدامها عند استخدام ميزة DayNight.

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

  • يحتوي AppCompatActivity الآن على دالة إنشاء ثانية تأخذ @LayoutRes int، ما يحلّ محل السلوك السابق المتمثل في إضافة تعليقات توضيحية إلى فئة AppCompatActivity باستخدام @ContentView. يعمل هذا الأسلوب في كلّ من وحدات التطبيق والمكتبة. (b/128352521)

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

  • تثبيت المهام التابعة الداخلية على إصدارات ثابتة حيثما أمكن ذلك
  • تم إصلاح مشكلة AppCompatSpinnerالتمرير في وضع القائمة المنسدلة )b/124274573)
  • المكالمات فقط applyOverrideConfiguration() إذا كان ذلك مطلوبًا لتطبيق DayNight

الإصدار ‎1.1.0-alpha03

‫13 مارس 2019

تم طرح androidx.appcompat:appcompat:1.1.0-alpha03 وandroidx.appcompat:appcompat-resources:1.1.0-alpha03. هذا هو الإصدار الأول من appcompat-resources. يمكنك الاطّلاع على القائمة الكاملة للتعديلات في هذا الإصدار هنا.

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

  • تحتوي مكتبة appcompat-resources الجديدة على واجهات برمجة تطبيقات تتيح للتطبيقات تحميل وتلوين الرسومات القابلة للرسم (بما في ذلك الرسومات المتجهة) على الإصدارات القديمة من النظام الأساسي. هذه هي الوظيفة نفسها التي كانت في السابق جزءًا من وحدة appcompat، ولكنها متاحة الآن بدون الحاجة إلى استخدام جميع ميزات appcompat المتوافقة مع الإصدارات القديمة من تصميم Material، بما في ذلك الأدوات والحوارات والوضع الداكن وما إلى ذلك.
  • إصلاحات رئيسية في توافق الوضع الليلي/النهاري
  • خيار MODE_NIGHT_AUTO_BATTERY جديد للوضع النهاري/الليلي
  • تلوين العناصر القابلة للرسم في AppCompatTextView
  • يمكن الآن تصميم القائمة الكاملة لشريط الأدوات باستخدام قوائم حالات الألوان المستندة إلى السمة
  • يمكن لرموز القوائم الآن استخدام ألوان تشير إلى سمات المظهر
  • يمكن ضبط السمة app:menu الجديدة على شريط أدوات لتوفير محتوى القائمة في وقت الإنشاء.

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

  • إصلاح وضع التلوين التلقائي في ImageView على الإصدار 21
  • تم إصلاح مشكلة عدم إغلاق النافذة المنبثقة الخاصة بعجلة التحميل بشكل صحيح عند تدوير الجهاز
  • لا يلتزم Fixed DayNight بالقيمة configChanges في البيان
  • تم إصلاح مشكلة عدم عمل التبديل إلى MODE_NIGHT_FOLLOW_SYSTEM (b/111345020)
  • إعادة ضبط Fixed WebView لموارد DayNight (b/37124582)

الإصدار ‎1.1.0-alpha02

‫7 فبراير 2019

تم طرح androidx.appcompat:appcompat 1.1.0-alpha02.

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

  • تم استخراج معالجة العناصر القابلة للرسم الخاصة بالموارد إلى خطاف (aosp/870976)
  • تم السماح لشريط الأدوات titleTextColor وsubtitleTextColor باستخدام ColorStateList، وتمت إضافة عمليات تحميل زائدة ColorStateList لطريقتَي setTitleTextColor وsetSubtitleTextColor (aosp/867489)

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

  • عدم عمل fontFamily على الإصدارات الأقدم من الإصدار 24 من واجهة برمجة التطبيقات (aosp/807054)
  • تم إصلاح الخطأ الذي كان يتسبّب في عدم عمل textFontWeight عندما يمتد النشاط من AppCompatActivity (aosp/847640)
  • تم إصلاح الخطأ الذي كان يتسبّب في عدم استخدام الخط المحدّد في fontFamily (aosp/789994) لنص العنوان في النافذة المنبثقة لعنصر واجهة المستخدم الخاص بأداة الاختيار (عند استخدام وضع مربع الحوار)
  • إصلاح الخطأ الذي كان يمنع التطبيقات المصغّرة AppCompatCheckBox وAppCompatRadioButton من تغيير درجة لون الخلفية (aosp/825160)
  • تم إصلاح الخطأ الذي لم يتمكّن فيه AppCompat من تجاهل android: list styles (aosp/862350)

الإصدار ‎1.1.0-alpha01

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

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

  • يتوافق AppCompatTextView الآن مع الرسومات القابلة للرسم المركّبة app:drawableLeftCompat وapp:drawableTopCompat وapp:drawableRightCompat وapp:drawableBottomCompat وapp:drawableStartCompat وapp:drawableEndCompat، كما يتوافق مع أنواع الرسومات القابلة للرسم التي تم نقلها إلى الإصدارات القديمة، مثل VectorDrawableCompat.

  • تتضمّن الآن العناصر القابلة للرسم التلقائية في AppCompatCheckBox وAppCompatRadioButton رسومًا متحركة عند تغيير حالة مربّع الاختيار.

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

  • aosp/740385: تتضمّن الآن فئة ActionBarOverlayLayout الفئتين NestedScrollingParent2 وNestedScrollingParent3، ما يتيح لها تسهيل أحدث الوظائف في ميزة "التمرير المتداخل 3". إذا كان رمز المطوّر يتجاوز حاليًا قيمة ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int)، من المحتمل أنّه لن يتم استدعاؤه بعد ذلك، ويجب بدلاً من ذلك تجاوز قيمة ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[]).

الإصدار 1.0.2

الإصدار 1.0.2

‫7 نوفمبر 2018

إصدار لإصلاح الأخطاء في core-1.0.1 وappcompat-1.0.2

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

  • تم إصلاح الخطأ الذي كان يؤدي إلى تعطُّل PrecomputedTextCompat عند استخدامه مع AppCompatTextView. b/113070424

الإصدار 1.0.0

الإصدار 1.0.0

‫7 نوفمبر 2018

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