تعرض هذه الصفحة تفاصيل حول الإصدارات القديمة من حزمة "مكتبة الدعم". بالنسبة أحدث الإصدارات من Support Library (مكتبة الدعم)، راجِع قسم قسم دعم النُسخ السابقة من المكتبة
الإصدار 26.0.0 التجريبي 2
(حزيران (يونيو) 2017)
تجدر الإشارة إلى أنّ الإصدار 26.0.0-beta2 هو إصدار تجريبي. وسطح واجهة برمجة التطبيقات عرضة للتغيير، ولا تتضمن بالضرورة ميزات أو إصلاحات للأخطاء من أحدث إصدارات ثابتة من Support Library.
ملاحظة مهمة: تتوفر مكتبات الدعم الآن. من خلال مستودع Maven التابع لشركة Google ليس عليك تنزيل الدعم. المستودع من "مدير حِزم تطوير البرامج (SDK)". لمزيد من المعلومات، يُرجى مراجعة إعداد مكتبة الدعم:
واجهات برمجة تطبيقات جديدة
- صف
JobIntentServiceجديد للمساعدة يُحدّد المطوّرون موعدًا للمهام بطريقة تتوافق مع نظام Android O الجديد حدود التنفيذ في الخلفية.
الاختلافات في واجهة برمجة التطبيقات
إصلاح الأخطاء
- فقدان حزمة تطوير البرامج (SDK) لنظام التشغيل Android يؤدي إلى فقدان النصوص المائلة في TextViews
- استثناء المؤشر "فارغ" عند الاتصال بـ MediaBrowserServiceCompat
- يجب أن يضبط TextInputLayout تلميحات على onProvideAutofill المشاهدون() .
- تجاوز التكديس عند استخدام الحجم التلقائي لـ TextView على O
الإصدار 26.0.0 التجريبي 1
(أيار (مايو) 2017)
يُرجى العلم أنّ الإصدار 26.0.0-beta1 هو إصدار تجريبي. وسطح واجهة برمجة التطبيقات عرضة للتغيير، ولا تتضمّن بالضرورة ميزات أو إصلاحات للأخطاء من أحدث إصدارات ثابتة من Support Library.
ملاحظة مهمة: تتوفر مكتبات الدعم الآن. من خلال مستودع Maven التابع لشركة Google ليس عليك تنزيل الدعم. المستودع من "مدير حِزم تطوير البرامج (SDK)". لمزيد من المعلومات، يُرجى مراجعة إعداد مكتبة الدعم:
تغييرات مهمة
FragmentActivity.setSupportMediaController()وFragmentActivity.getSupportMediaController()تمت إزالتها. يُرجى استخدام طريقتَيMediaControllerCompat.setMediaController()وMediaControllerCompat.getMediaController()الثابتَين الجديدتَين.- المكالمات الآن من "
BottomNavigationView"onNavigationItemReselected()عندما يتم تحديد عنصر تم اختياره مسبقًا، بدلاً من الاتصالonNavigationItemSelected() - تعرض جميع مثيلات الطريقة
findViewById()الآن<T extends View> Tبدلاً منView. هذا التغيير للآثار التالية:- وقد ينتج عن ذلك الكود الحالي الذي أصبح من الواضح الآن نوع الإرجاع،
على سبيل المثال، إذا كان هناك كل من
someMethod(View)someMethod(TextView)الذي يأخذ نتيجة مكالمة إلىfindViewById() - عند استخدام اللغة المصدر في Java 8، يتطلب ذلك إرسالًا صريحًا إلى
Viewعندما يكون نوع الإرجاع غير مقيّد (على سبيل المثال،assertNotNull(findViewById(...)).someViewMethod()) - إلغاء طرق
findViewById()غير النهائية (لـ مثال،Activity.findViewById()) سيحتاج إلى إرجاعه تم تحديث النوع.
- وقد ينتج عن ذلك الكود الحالي الذي أصبح من الواضح الآن نوع الإرجاع،
على سبيل المثال، إذا كان هناك كل من
واجهات برمجة تطبيقات جديدة
-
لدى
FragmentManagerوFragmentisStateSaved()للسماح بالاستعلام عما إذا كان سيتم السماح بالمعاملات بدون فقدان الولاية. هذا مفيد بشكل خاص للتحقّق عند التعامل مع حدثonClick()قبل تنفيذ أي معاملة. - حركة المسار متاحة في
AnimatedVectorDrawableCompat. تتيح حركة المسار لصانع رسوم متحركة لجسم واحد تغيير خاصيتين في نفس الوقت على أساس مسار واحد؛ يتم تحديد المسار على أنهandroid:pathDataفي ملف XML الخاص بصانع الصور المتحركة). - مستندة إلى الفيزياء
الرسوم المتحركة:
FlingAnimationجديد يتيح استخدام الصور المتحركة السرعة الأولية ويبطئ بسلاسة.- تتيح الفئات الفرعية من
DynamicAnimationاستخدام الصور المتحركة المخصّصة. لأي كائن. - بإمكان كل من
SpringAnimationوFlingAnimationتنفيذ ما يلي: تحريك قيمة عائمة الآن بدون الحاجة إلى السمةViewأوObjectالمرتبط بها.
لمزيد من المعلومات، يُرجى الاطّلاع على صور متحركة لربيع وتحريك الصور المتحركة صفحات المعاينة.
-
الخط
دعم بتنسيق XML:
-
يسمح
ResourcesCompat.getFontبتحميل الخط التي يمكن استخدامها مع ملفات XML الخاصة بمجموعة الخطوط،TextView.setTypeface() - عند استخدام AppCompat، يتيح TextView تحديد مورد الخط أو
مجموعة الخطوط بتنسيق XML من خلال سمة XML
android:fontFamily. - استخدِم مجموعة خطوط XML لإنشاء مجموعات خطوط بأسلوب ووزن مناسب.
المختلفة. (إذا كنت تستخدم فئات مكتبة الدعم لإجراء ذلك، استخدِم
سمات
app:وكذلكandroid:ذات الصلة.)
-
يسمح
- قابل للتنزيل
الخطوط:
- ميزة "
FontsContractCompat" جديدة تتيح لك طلب خطوط من موفر الخطوط بدلاً من تجميعها في تطبيقك. - يمكن أيضًا طلب الخطوط بتنسيق XML واستخدامها في التخطيطات.
- ميزة "
-
توافق الرموز التعبيرية
المكتبة:
-
بإمكان "
EmojiCompat" معالجةCharSequenceمحدّد. وإضافةEmojiSpans. -
EmojiTextViewوأدوات أخرى لعرض الرموز التعبيرية. -
FontRequestEmojiCompatConfigلطلب خط الرموز التعبيرية من الخط.
-
بإمكان "
-
التخصيص التلقائي
TextView:
- طرق جديدة في
TextViewCompatبالإضافة إلى سمات XML للتحكّم في الحجم التلقائي فيTextView
- طرق جديدة في
- عناصر التحكم في تشغيل Leanback مع طلب الدعم:
-
PlaybackTransportRowPresenterجديد لعرض المحتوى باستخدام شريط التمرير.- نوع جديد من "
PlaybackTransportControlGlue" يعمل معPlaybackTransportRowPresenterويتوافق مع ميزة التقديم/الترجيع. - الفئة الأساسية الجديدة
PlaybackSeekDataProviderللتطبيق توفير صور مصغّرة للبحث فيPlaybackTransportControlGlue.
- مخزن بيانات الإعدادات المفضّلة:
-
يسمح لك
PreferenceDataStoreالآن بتنفيذ نماذجك الخاصة مساحة تخزين الإعدادات المفضّلة، تم ضبطها باستخدام الطرق الجديدة فيPreferenceوPreferenceManager.
-
يسمح لك
المشاكل المعروفة
- دمج توافق الخطوط والرموز التعبيرية القابلة للتنزيل مع Google Play لا تعمل الخدمات إلا على الإصدار 11 من خدمات Google Play أو الإصدارات الأحدث، وهو حاليًا متاحة من خلال Google Play البرنامج التجريبي للخدمات.
إصلاح الأخطاء
-
واجهة برمجة تطبيقات
MediaBrowserCompat.search()لا تعمل (مشكلة في AOSP 262170) -
طرح
ViewCompat.postInvalidateOnAnimation()استثناءً (AOSP) المشكلة 80146) -
تم استدعاء
onActivityCreated()للأجزاء في النشاط الذي تم إتلافه. -
يجب أن تكون قيمة
RecyclerView.isComputingLayout()هي "صحيح" خلال جلب مسبق -
عند مقاطعة عملية انتقال
Fadeوعكسها، يبدأViewالصورة المتحركة من البداية. (إصلاح تم نقله من إطار عمل Android). -
Transition.Fadeيتجاهل ألفا الأولى منView(مشكلة في بروتوكول AOSP 221820)
مراجعة 26.0.0 ألفا 1
(آذار (مارس) 2017)
يُرجى ملاحظة أن 26.0.0-alpha1 هو إصدار تجريبي. وسطح واجهة برمجة التطبيقات عرضة للتغيير، ولا تتضمّن بالضرورة ميزات أو إصلاحات للأخطاء من أحدث إصدارات ثابتة من Support Library.
تغييرات مهمة
ملاحظة: تمت زيادة الحد الأدنى لإصدار حزمة تطوير البرامج (SDK) إلى 14. ونتيجة لذلك، فإن العديد من واجهات برمجة التطبيقات التي كانت موجودة فقط لواجهة برمجة التطبيقات < 14 توافقًا نهائيًا. على عملاء واجهات برمجة التطبيقات هذه نقل البيانات إلى إطار العمل الخاص بهم. كما هو موضح في الصفحة المرجعية لكل واجهة برمجة تطبيقات تم إيقافها نهائيًا.
- تم إيقاف وحدة النسبة المئوية للدعم نهائيًا. عملاء هذه الوحدة إلى أداة ConstraintLayout الجديدة، والتي يتم توفيرها عنصر منفصل في أداة "مدير SDK"
- لم تعد وحدة جزء الدعم تعتمد على support-media-compat.
واجهات برمجة تطبيقات جديدة
تمت إضافة العديد من الفئات والطرق والثوابت الجديدة لتوفير دعم متوافق مع الإصدارات القديمة لواجهات برمجة تطبيقات النظام الأساسي التي تمت إضافتها في معاينة O.
IME_FLAG_NO_PERSONALIZED_LEARNING: بإمكان أدوات IME الاستماع إلى "عدم التعلم" علامات للتطبيقات التي وفّرت وضع خاص، مثل المتصفّحات. هذا النمط أدوات تحرير أسلوب الإدخال في معرفة ما إذا كان التطبيق في الوضع الخاص، حتى يتمكنوا من إيقاف التعلّم أو الوظائف التكيُّفية أثناء تشغيل التطبيق الحالي.
للحصول على قائمة كاملة بتغييرات واجهة برمجة التطبيقات بين الإصدار 25.2.0 و26.0.0-alpha1، يمكنك الاطّلاع على واجهة برمجة تطبيقات مكتبة الدعم تقرير الاختلافات
إصلاح الأخطاء
- في بعض الحالات، تكون قيمة
AutoTransitionبسيطة يمكن مقاطعة الرسوم المتحركة من خلال عرض "يقفز". (مشكلة في بروتوكول AOSP 221816)
مراجعة 25.4.0
(حزيران (يونيو) 2017)
ملاحظة مهمة: تتوفر مكتبات الدعم الآن. من خلال مستودع Maven التابع لشركة Google ليس عليك تنزيل الدعم. المستودع من "مدير حِزم تطوير البرامج (SDK)". لمزيد من المعلومات، يُرجى مراجعة إعداد مكتبة الدعم:
تغييرات مهمة
- لا يُسمح بمكالمات
executePendingTransactions()وcommitNow()وpopBackStackImmediate()وطلبات معاملات مشابهة أثناء تم تغيير حالةFragmentManager. مشترك جديد إنّ تنفيذ المعاملات غير آمن، ويفرض تطبيقFragmentManagerذلك الآن أثناء حالته. التغييرات. - بالتزامن مع إصدار مكتبة الدعم هذا، سنطرح أيضًا
multidex
الإصدار 1.0.2. يتضمّن هذا الإصدار التغييرات المهمة التالية:
- يسمح هذا البروتوكول بتصدير بيانات حزمة APK الخاصة بأدوات القياس.
- إيقاف MultiDexTestRunner نهائيًا (يجب استخدام AndroidJUnitRunner بدلاً من ذلك).
- تقديم حماية أفضل من بعض عمليات الاستخراج غير الصالحة للأرشيف إدارة التطبيق.
- إصلاح الخطأ الذي قد يؤدي إلى التخلي عن الملفات المؤقتة.
- تتيح هذه الميزة إجراء عملية التثبيت بشكل أسرع عند تنفيذها في عملية متزامنة.
- أصلح خطأ تثبيت واجهة برمجة التطبيقات 19 و20.
واجهات برمجة التطبيقات الجديدة والمعدّلة
يتوفّر تحويل المسار واستكمال المسار في AnimatedVectorDrawableCompat. تحوّل المسار
للسماح بتغيير الأشكال من مسار واحد (تم تحديد ذلك
android:valueFrom) إلى مسار آخر (تم تحديده على أنّه
android:valueTo)، بهدف توفير عناصر مرئية معقدة وجذابة
التأثيرات. يسمح استقراء المسار بتحديد عوامل الاستيفاء في المسار AnimatedVectorDrawableCompat
كمسارات (يتم تحديدها كـ android:pathData في أداة التحميل التلقائي)
XML).
الاختلافات في واجهة برمجة التطبيقات
المشاكل التي تم إصلاحها
- استثناء المؤشر "فارغ" عند الاتصال بـ MediaBrowserServiceCompat
- واجهة برمجة التطبيقات MediaBrowserCompat.search() لا تعمل (مشكلة AOSP 262170)
- تصفحFragment onItemClicked معاودة الاتصال معطلة في 25.3.0
- NullPointerException أثناء التمرير لأعلى ولأسفل في VerticalGridView في 1.3.25
- ClassCastException في SimpleArrayMap.allocArrays()
المراجعة 25.3.1
(آذار (مارس) 2017)
المشاكل التي تم إصلاحها
- يتطلب
SwitchCompatالحد الأدنى من حزمة تطوير البرامج (SDK) من الإصدار 14 أو إصدار أحدث. (مشكلة في بروتوكول AOSP 251302) - تتخطّى الصورة المتحركة
updateListenerالمستندة إلى الفيزياء الإطار الأول. - صورة متحركة للتصنيف
BottomNavigationViewهناك عطل.
مراجعة 25.3.0
(آذار (مارس) 2017)
تغييرات مهمة
ستتم تلقائيًا إضافة البيانات الوصفية لإصدار مكتبة الدعم إلى
AndroidManifest.xml عند الإنشاء من Gradle، والذي يبسط
إصدارات التتبع في الإصدارات العامة. مثلاً:
<meta-data android:name="android.support.VERSION" android:value=>"25.3.0" /
عمليات الإيقاف نهائيًا
تم إيقاف عدد من الطرق والفئات في هذا الإصدار. ستتم إزالة واجهات برمجة التطبيقات المتوقّفة نهائيًا في إصدار مستقبلي، وعلى المطوّرين تنفيذ هذا الإجراء. وتنتقل بعيدًا عنها. لمزيد من المعلومات حول كيفية الانتقال من واجهة برمجة تطبيقات (API) محددة، راجع وثائقها.
ExifInterface- الطريقة المنطقية
getLatLong(float[])نهائيًا. واستخدِم الطريقة الجديدةgetLatLong()بدلاً من ذلك والتي لا تأخذ أي وسيطات وتعرضdouble[]. mediacompat- تم إيقاف
PlaybackStateCompat.Builder.setErrorMessage(CharSequence)نهائيًا. وبدلاً من ذلك، استخدِم الطريقة الجديدةsetErrorMessage(int, CharSequence), والذي مرّ رمز خطأ ووصفًا اختياريًا.
تم إيقاف EXTRA_SUGGESTION_KEYWORDSنهائيًا. بدلاً من ذلك، استخدم وظيفة بحث "MediaBrowserCompat"v7.recyclerviewLinearLayoutManager.getInitialItemPrefetchCount()كان تمت إعادة تسميتها إلىLinearLayoutManager.getInitialPrefetchItemCount(). لا يزال الاسم القديم متاحًا، ولكن ستتم إزالته في إصدار مستقبلي.
واجهات برمجة التطبيقات الجديدة والمعدّلة
appcompat-v7- الطريقة الجديدة
ActionBarDrawerToggle.setDrawerSlideAnimationEnabled(boolean)يبسط عملية إيقاف الرسوم المتحركة لرمز تبديل درج التنقل. customtabs- تمت إضافة إمكانية استخدام قنوات الرسائل. يمكنك الاطّلاع على
CustomTabsService.requestPostMessageChannel()أوCustomTabsService.postMessage()مرجع للتفاصيل. dynamic-animation- مكتبة جديدة للصور المتحركة تستند إلى الفيزياء وتوفّر مجموعة من واجهات برمجة التطبيقات لإنشاء رسوم متحركة تتفاعل ديناميكيًا مع إدخالات المستخدم.
leanback-v17- تمت إضافة التوافق مع الخلفيات المتباينة. يمكنك الاطّلاع على
Parallaxمرجع للتفاصيل. - تمت الإضافة
TimePickerتطبيق مصغّر لاختيار الأوقات على واجهة التلفزيون. mediacompat- تمت إضافة وظيفة بحث. يمكنك الاطّلاع على
MediaBrowserCompat.search()أوMediaBrowserServiceCompat.onSearch()مرجع للتفاصيل. - تمت إضافة دعم لأوضاع الترتيب العشوائي والتكرار. يمكنك الاطّلاع على
MediaSessionCompat.setRepeatMode()أوsetShuffleModeEnabled()مرجع للتفاصيل.
المشاكل التي تم إصلاحها
- رمية "
StaggeredGridLayoutManager"IllegalArgumentException(مشكلة AOSP 230295) - لا يتعامل الجلب المُسبَق من قِبل
RecyclerViewبشكل صحيح معRecyclerViewالمرفق ولكن ليس على الشاشة. - لم تتعرّف Robolectric على
LinearLayout. - عند تلف
Activity، يتم استدعاءonActivityCreated()بشكل غير صحيح للأجزاء - تسبب الدالة الإنشائية
AppCompatImageViewفيArrayIndexOutOfBoundsException - أداء ضعيف لواجهة المستخدم خلال عملية نقل النشاط على "
Call.Details"
مراجعة 25.2.0
(شباط (فبراير) 2017)
تغييرات مهمة
المشاكل التي تم إصلاحها
- يعالج هذا الإصدار مشكلة خطيرة في جهاز توجيه الوسائط يتم فيها استخدام A2DP. واجهات برمجة التطبيقات لتوجيه الأجهزة والوسائط إلى توقف الجهاز عن الاستجابة، مما يتطلب إعادة التشغيل.
FragmentManager.FragmentLifecycleCallbacksالفئة ثابتة الآن.
المشاكل التي تم إصلاحها
- يؤدي عرض عرض تقديمي للشرائح باستخدام النسخ المطابق للشاشة إلى جعل الجهاز قطع الاتصال بشبكة Wi-Fi
- لم يتعامل زر الوسائط بشكل صحيح مع تطبيقات الوسائط التي لم يتم تسجيلها.
أنفسهم باستخدام
setMediaButtonReceiver() -
خطأ واحد (
VectorDrawable) في مورد السلسلة (مشكلة AOSP 232407) - تلميح
TextInputLayoutللتراكب و النص في حال ضبط النص باستخدام XML (مشكلة AOSP 230171) - تسرّب الذاكرة في
MediaControllerCompat(مشكلة في AOSP 231441) -
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()التعطّل - عطلان (
RecyclerView) أثناء إعادة التدوير الملفان الشخصيان (مشكلة AOSP 225762) - تعرض الدالة
getAllowGeneratedReplies()القيمة "خطأ" بشكل غير صحيح للإجراءات داخلWearableExtender
المراجعة 25.1.1
(كانون الثاني/يناير 2017)
ملاحظة مهمة: هناك خطأ معروف في android.support.v7.media.MediaRouter.
الفصل الدراسي في المراجعة 25.1.1 و25.1.0 من مكتبة الدعم. إذا كان تطبيقك يستخدم
والإصدار 7 من MediaRouter،
يجب التحديث إلى الإصدار 25.2.0 من Support Library Revision،
مما يصلح هذا الخطأ.
تغييرات مهمة
-
يمكن الآن تحسين المعاملات التجزئة داخل وعبر المعاملات. يمكن أن يؤدي تحسين عمليات المعاملات المجزأة إلى إزالة العمليات التي يتم إلغاؤها. على سبيل المثال، لنفترض أن هناك معاملتين معًا، بحيث يضيف الجزء A والجزء الثاني الذي يستبدل الجزء A بالجزء B. في هذه الحالة، تتم العملية الأولى مُلغاة، وإضافة الجزء "ب" فقط. هذا يعني أن الجزء قد لا يمرّ المستخدم بمراحل عملية الإنشاء أو التدمير.
ومن الآثار الجانبية لهذا التحسين هو أنه قد تكون للأجزاء حالة التغييرات خارج الترتيب المتوقع. على سبيل المثال، لنفترض أن هناك معاملة واحدة يضيف الجزء A، يضيف الجزء B، ويضيف الثالث الجزء B، ثم يزيل الجزء الثالث الجزء إيه. وبدون التحسين، يمكن أن يتوقع الجزء "ب" أنه أثناء تم الإنشاء، سيتواجد الجزء A أيضًا بسبب إزالة الجزء A بعد إضافة الجزء B. مع التحسين، لا يمكن التأكد من الجزء "ب" سيكون هذا الجزء A موجودًا أثناء إنشاء الجزء B، لأن الجزء A قد تتم إزالة الإنشاء والتدمير من خلال عملية التحسين.
تكون عملية التحسين هذه غير مفعَّلة تلقائيًا. لتفعيل التحسين، الاتصال بخدمة
FragmentTransaction.setAllowOptimization(true) - يمكن للأجزاء الآن تأجيل عمليات النقل والرسوم المتحركة الخاصة بها حتى
جاهزة باستخدام
Fragment.postponeEnterTransition()وFragment.startPostponedEnterTransition(). تشبه واجهة برمجة التطبيقات هذه واجهة برمجة التطبيقاتActivity.postponeEnterTransition()وActivity.startPostponedEnterTransition()المستخدَمة مع عمليات نقل الأنشطة.
المشاكل التي تم إصلاحها
-
تعذّر تنفيذ الإجراء "
MediaSessionCompatTest" معIllegalArgumentException -
لم يتم استدعاء
DetailsFragment.installTitleView()في 25.1.0 - تُبقي معاملة الجزء عرض التجميع عند الخروج (مشكلة AOSP 230679)
-
يجب إضافة مسافة للمسافة في
BottomNavigationView. بين رمز العنصر والنص (مشكلة في بروتوكول AOSP 230653) - أدوات معالجة البيانات التي تم اختيارها غير متوفّرة في الإصدار الجديد من
PlaybackFragmentPlaybackSupportFragment -
لن يتغيّر تركيز "
TextInputLayout". بشكل صحيح في المحاكي من الإصدار 25.1.0 من مكتبة الدعم (مشكلة AOSP) 230461) - لا يمكن استبدال قائمة
BottomNavigationView(AOSP). المشكلة 230343) -
RecyclerViewمع "StaggeredGridLayoutManager" الأعطال التي تتضمّن عناصر كاملة النطاق (مشكلة AOSP 230295) - سيتعطُّل في
MediaSessionCompatعند باستخدامsetCallback(null) -
PlaybackGlueHostOldو عدم إرسال إشعار إلى استدعاءات "PlaybackSupportGlueHostOld" في حال تغييرات صفوف التشغيل -
مثال لـ
PlaybackOverlayFragmentيتعذّر بدء تشغيل/test. -
تعذُّر تنفيذ "
RecyclerViewFocusRecoveryTest" على واجهة برمجة التطبيقات 15 - "لقطات الشاشة" يتم التركيز على أعلى الشاشة
-
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()الأعطال على واجهة برمجة التطبيقات 15 -
setActions()فيonSubactionClicked()معطّلة -
تعطُّل
RecyclerViewعند إعادة تدوير بعض حوامل العرض
المراجعة 25.1.0
(كانون الأول (ديسمبر) 2016)
ملاحظة مهمة: هناك خطأ معروف في android.support.v7.media.MediaRouter.
الفصل الدراسي في المراجعة 25.1.1 و25.1.0 من مكتبة الدعم. إذا كان تطبيقك يستخدم
والإصدار 7 من MediaRouter،
يجب التحديث إلى الإصدار 25.2.0 من Support Library Revision،
مما يصلح هذا الخطأ.
تغييرات مهمة
- عملاء تطبيقات
RecyclerViewالمصغّرة المدمجة (على سبيل المثال، قائمة التمرير الرأسي لقوائم التمرير الأفقي) يمكن أن الاستفادة الكبيرة من مزايا الأداء من خلال توضيح عدد مدراء التنسيق الداخلية لأدواتRecyclerViewالعناصر للتحضير قبل التمرير على الشاشة. اتصلLinearLayoutManager.setInitialPrefetchItemCount(N), حيث N هو عدد المشاهدات المرئية لكل عنصر داخلي. على سبيل المثال: إذا كانت القوائم الأفقية الداخلية تعرض ما لا يقل عن ثلاث مشاهدات ونصف للعناصر يمكنك تحسين الأداء من خلال إجراءLinearLayoutManager.setInitialPrefetchItemCount(4)إجراء ذلك يسمح لـRecyclerViewبإنشاء جميع مشاهدة مبكرة، بينما مشاهدة الفيديو الخارجيRecyclerViewهو التمرير، مما يقلل بشكل كبير من مقدار التقطُّع أثناء التمريرات. FragmentActivity.setSupportMediaController()وFragmentActivity.getSupportMediaController()تم إيقافها نهائيًا. يُرجى استخدام الثابتَين الجديدَينMediaControllerCompat.setMediaController()وMediaControllerCompat.getMediaController(). الطرق.- عندما يحدِّد العميل درجة لون التطبيق المصغّر من خلال تلوين التطبيق (على سبيل المثال،
appcompat:buttonTint)، يكون العميل مسؤولاً عن تقديم جميع الحالات اللازمة (مثل "غير مفعّلة" أو "تم الضغط عليها" وما إلى ذلك). هذا هو متناسقة مع طريقة تحديد درجات الألوان المصغّرة للأداة عند استخدام تعديل إطار العمل.
واجهات برمجة التطبيقات الجديدة والمعدّلة
- تمت إضافة دعم ExifInterface. المكتبة. هذه المكتبة لإلغاء تجميع الدعم لقراءة معلومات Exif من JPEG وتنسيقها غير المنسّق وإعداد معلومات Exif على ملفات صور JPEG.
- تمت إعادة ضبط "
Snackbar" لتصبح السماح للتطبيقات بعرض محتوى مخصص.BaseTransientBottomBarهي الفئة الأساسية الجديدة التي تعرض الانزلاق العام وسلوك الرسوم المتحركة. - تمت إضافة حزمة leanback.media الجديدة التي تحتوي على صفوف مساعدة لدمج مشغّلات الوسائط في تطبيقات Android TV.
- تمت إضافة
SeekBarPreference. مع تنسيق وسمات قابلة للتخصيص إلى تفضيل الإصدار 7 للحصول على الدعم اللازم - تمت إضافة
ArraySet. إلى مكتبة دعم الإصدار 4. تتجاوب هذه الفئة مع إطار العمل فئةArraySetتم استبدالها بالمستوى 23 من واجهة برمجة التطبيقات - عنصر واحد (
RecyclerView) لإعادة التدوير تحسينات الجلب المسبق:- جلب مُسبَق لميزة "
RecyclerView" المُدمَج تفعيل الجلب المُسبَق للمحتوى منRecyclerViewضمنRecyclerViewيتم تمريره مسبقًا، مع واجهة برمجة التطبيقات للتحكّم في مقدار يتم الجلب المسبق: - واجهات برمجة التطبيقات التي تمت إضافتها إلى
LayoutManagerالمخصّص الكائنات المطلوب تنفيذها لتفعيل الجلب المسبق أثناء التمرير والانتقالات - تحسينات على الجلب المسبق للقيام فقط بنفس قدر عمل الإنشاء/الربط من الممكن في الفترة الزمنية بين الإطارات
- جلب مُسبَق لميزة "
المشاكل التي تم إصلاحها
- تعذّر إيقاف إمكانية رؤية كلمة المرور في اختبارات إمكانية الوصول.
- لا يحترم Appcompat
state_enabledعلى الأجهزة التي تعمل بالإصدارات الأقدم من Android. - تمت إضافة آلية استعادة التركيز إلى
RecyclerView. تفضيل الدعم الثابت هذا أيضًا تركيز غير مكتمل عند استخدام أزرار الاتجاهات، كما هو الحال في Android TV الأجهزة. - Leanback: يتعطّل التصفح Fragment مع إيقاف الرؤوس والمحوّل الفارغ.
- Appcompat:
AlertDialogعريض جدًا. - مكالمتان (
InputContentInfoCompat)requestPermission()عند الاتصال بـreleasePermission(). MediaBrowserCompatعطل.- يقيس CoordinatorLayout طرق العرض عند تعيين مستوى الرؤية على
GONE - تعذّر تلوين
AnimatedVectorDrawableCompatعلى مستوى واجهة برمجة التطبيقات. أقل من 24 - تعرض مكتبة Leanback أخطاء الوبر الزائفة
- تسببت مكتبة لوحات الألوان في إخفاق الاختبار في كل مستوى من مستويات واجهة برمجة التطبيقات.
RecyclerViewاختبار فاشل على Leanback- عطلان (
RecyclerView) أثناء إعادة التدوير الملفان الشخصيان (مشكلة AOSP 225762) Fragment.onDestroy()لا يتم استدعاؤه للجزء في Backstack- حجم التمويه الخاص بـ
CollapsingToolbarLayoutهو غير مرسوم عند التصغير CoordinatorLayout.offsetChildByInset()رمياتIllegalArgumentException- جارٍ فصل
RecyclerViewعناصر متحركةRecyclerViewداخلية، منع المستقبل يجلب مسبقًا - لا يمكن تحميل
RecyclerViewعنصر جلب مدمج مسبقًا - الجلب المسبق للبيانات لـ
RecyclerViewالمدمَجة تم تجاهل العناصر أثناء التصميم الأول - تعذُّر الجلب المُسبَق لـ
RecyclerViewفي حال السحب مرتين الأحداث تصل في نفس الموضع - على "
RecyclerView" توقُّع. التنسيق أثناء عرض RenderThread - لا يتم دائمًا تحويل موارد الألوان التي تم ضبطها في الليل إلى "رسومات قابلة للرسم". تمت الإزالة نهائيًا بشكل صحيح من ذاكرة التخزين المؤقت للموارد
FloatingActionButton: عدم عمل إعداد BackgroundTintList آليًا بشكل صحيح (AOSP) المشكلة 227428)TextInputLayout: الخط الطباعي ليس بدء الإعداد في errorView (مشكلة AOSP 227803)- يتراجع
TextInputLayoutدائمًا لون ضوء الخطأ أقل من واجهة برمجة التطبيقات 23 (مشكلة AOSP 221992) - يظهر "
FloatingActionButton" بشكل يتم الضغط عليه عند مغادرة المؤشر
تتوفر قائمة كاملة بإصلاحات الأخطاء العامة على أداة تتبُّع مشاكل AOSP
عمليات الإيقاف نهائيًا
تم إيقاف عدد من الطرق والفئات في هذا الإصدار. هذه ستتم إزالة واجهات برمجة التطبيقات المتوقّفة نهائيًا في إصدار مستقبلي، وعلى مطوّري البرامج وتنتقل بعيدًا عنها. لمزيد من المعلومات حول كيفية الانتقال من واجهة برمجة تطبيقات (API) محددة، راجع وثائقها.
-
android.support.design.widget -
android.support.v17.leanback.appBackgroundManager.getDefaultDimLayer()BackgroundManager.getDimLayer()BackgroundManager.setDimLayer()MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[])MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[],int[])PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[])PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[],int[])PlaybackControlGlue.getFragment()PlaybackControlGlue.getOnItemViewClickedListener()PlaybackControlGlue.onRowChanged()PlaybackControlGlue.pausePlayback()PlaybackControlGlue.skipToNext()PlaybackControlGlue.skipToPrevious()PlaybackControlGlue.startPlayback()PlaybackControlSupportGluePlaybackOverlayFragmentPlaybackOverlaySupportFragment
-
android.support.v17.leanback.widget -
android.support.v4.appFragmentActivity.getSupportMediaController()FragmentActivity.setSupportMediaController()
المراجعة 25.0.1
(تشرين الثاني (نوفمبر) 2016)
المشاكل التي تم إصلاحها
- إيقاف/تفعيل كلمة مرور
TextInputLayoutالآن بشكل افتراضي لتجنب الاستبدال بدون داعٍ عناصر قابلة للرسم النهائي يحدّدها المطوِّر قد يتم تفعيلها يدويًا عبر سمة XML:passwordToggleEnabled - عنصران (
BottomNavigationView) الآن سطر واحد لمطابقة مواصفات المواد. - هناك
RecyclerViewتعطُّل أثناء الجلب المُسبَق إذا مدير التخطيط فارغ. - يبلغ ارتفاع
BottomNavigationViewتعيينه الآن بشكل صحيح. (مشكلة في بروتوكول AOSP 226182) - يتعطّل
BottomNavigationViewعندما إضافة عناصر القائمة برمجيًا. (مشكلة في بروتوكول AOSP 225731) - ضبط إلى اليمين واليسار (
TextInputLayout) القابلة للرسم المركبة. (مشكلة في بروتوكول AOSP 225836) - عطلان (
RecyclerView) أثناء إعادة التدوير أصحاب المشاهدات (مشكلة في بروتوكول AOSP 225762) - Leanback: غالبًا ما تقول ميزة TalkBack كلمة "خالٍ" في طرق العرض في وضع تقسيم الشاشة
RecyclerView: مشاكل العرض باللغة "استوديو Android". (مشكلة في بروتوكول AOSP 225753)- لا يزال
BottomNavigationViewيظهر عنصر القائمة كما هو محدد بعد عرضonNavigationItemSelected()على القيمة false. (مشكلة في بروتوكول AOSP 225898) - يطرح RedirectListener
NoSuchMethodError. بروتوكول AOSP المشكلة 225647) TextInputEditTextلا يظهر في وضع استخراج أداة IME. (مشكلة في بروتوكول AOSP 221880)
تتوفر قائمة كاملة بإصلاحات الأخطاء العامة على أداة تتبُّع مشاكل AOSP
مراجعة 25.0.0
(تشرين الأول/أكتوبر 2016)
تغييرات مهمة
- تم وضع دالة إنشاء
ContextCompatجعل البيانات محميّة. يجب ألا يتم إنشاء مثيل لهذه الفئة بشكل علني، ولكن يمكن أن تكون كذلك. من خلال مكتبات الدعم التي تستهدف مستويات أحدث لواجهة برمجة التطبيقات. - تم إنشاء دالة إنشاء واحدة (
ActivityCompat). محمي. يجب ألا يتم إنشاء مثيل لهذه الفئة بشكل علني، ولكن يمكن أن تكون كذلك. من خلال مكتبات الدعم التي تستهدف مستويات أحدث لواجهة برمجة التطبيقات. - تم إنشاء
getReferrer(Activity). ثابتة. -
تمت إزالة
android.support.design.widget.CoordinatorLayout.Behavior.isDirty(CoordinatorLayout, V). أي عمليات تنفيذ للعميل لهذه الطريقة . -
تمت إزالة
android.support.v4.media.session.MediaSessionCompat.obtain(Context, Object). يجب استبدال الاستخدامات بالمزيد من الطريقة ذات الاسم المناسبfromMediaSession() -
android.support.v4.media.session.MediaSessionCompat.QueueItem.obtain(Object)تمت إزالة. يجب استبدال الاستخدامات بالعرض الطريقة المُسماةMediaSessionCompat.QueueItem#fromQueueItem -
تمت إزالة
android.support.v7.widget.Space. الاستخدامات يجب استبداله بـandroid.support.v4.widget.Space.
واجهات برمجة تطبيقات جديدة
-
صف واحد (
android.support.design.widget.BottomNavigationView) ينفذ الجزء السفلي التنقل من مواصفات Material Design. - حزمة
android.support.v13.view.inputmethodالجديدة تتضمن صفوفًا للوصول إلى ميزاتandroid.view.inputmethod.InputConnectionالتي تم طرحها بعد واجهة برمجة التطبيقات المستوى 13. -
صف واحد (
android.v7.widget.RecyclerView.DividerItemDecoration) توفر تطبيقًا أساسيًا للفواصل الرأسية أو الأفقية بين عناصر. - أنماط مزينة جديدة في
android.support.v7.app.NotificationCompat،DecoratedCustomViewStyleوDecoratedMediaCustomViewStyle، الفئات المشابهة التي تمت إضافتها في Platform API 24.
المشاكل التي تم إصلاحها
تتوفر قائمة كاملة بإصلاحات الأخطاء العامة على أداة تتبُّع مشاكل AOSP
المراجعة 24.2.1
سبتمبر 2016
المشاكل التي تم إصلاحها:
- لم يعُد بإمكان "
FloatingActionButton" إلى العناصر الثانوية غير المباشرة لـCoordinatorLayout. (مشكلة في بروتوكول AOSP 220250) - لا يتم تكبير الصورة داخل
CollapsingToolbarLayoutبشكلٍ صحيح معfitsSystemWindows=true. (مشكلة في بروتوكول AOSP 220389) - يطرح
CoordinatorLayoutIndexOutOfBoundsExceptionعند ظهورSnackbarوإغلاقه. (مشكلة في AOSP 220762) - تعذّر حلّ
TextInputLayoutلون نص الخطأ. (مشكلة في بروتوكول AOSP 220305) - يتصل
BatchedCallback.onMoved()بـBatchedCallback.onInserted(). (مشكلة في بروتوكول AOSP 220309) TextInputLayoutيتجاوز اليمين وقابل للرسم. (مشكلة في بروتوكول AOSP 220728)
تتوفر قائمة كاملة بإصلاحات الأخطاء العامة على أداة تتبُّع مشاكل AOSP
مراجعة 24.2.0
آب (أغسطس) 2016
يحتوي الإصدار 24.2.0 على التغييرات التالية:
- الإصدار 4 من تقسيم مكتبة الدعم
- تعديلات على واجهة برمجة التطبيقات
- تغيّرات السلوك
- عمليات الإيقاف نهائيًا
- إصلاح الأخطاء
ملاحظة: يزيل الإصدار 24.2.0 دعم Android 2.2 (المستوى 8 من واجهة برمجة التطبيقات) والإصدارات الأقدم الفئات والطرق الموجودة فقط يتم الآن وضع علامة على إصدارات النظام هذه على أنها متوقفة نهائيًا ويجب ألا تنبؤي. قد تتم في المستقبل إزالة هذه الصفوف والطرق المتوقّفة نهائيًا .
الإصدار 4 من تقسيم مكتبة الدعم
في هذا الإصدار، تضم مكتبة دعم الإصدار 4 إلى عدة وحدات أصغر:
-
support-compat -
توفّر برامج تضمين التوافق لواجهات برمجة التطبيقات الجديدة لإطار العمل، مثل
Context.getDrawable()وView.performAccessibilityAction() -
support-core-utils -
توفّر عددًا من فئات الخدمات، مثل
AsyncTaskLoaderوPermissionChecker. -
support-core-ui -
تنفيذ مجموعة متنوعة من المكوّنات المتعلّقة بواجهة المستخدم، مثل
ViewPagerوNestedScrollViewوExploreByTouchHelper -
support-media-compat -
الأجزاء الخلفية من إطار عمل الوسائط،
بما في ذلك
MediaBrowserوMediaSession. -
support-fragment -
نقل الجزء
إطار العمل. تعتمد هذه الوحدة على
support-compat،support-core-utilsوsupport-core-uiوsupport-media-compat
للتوافق مع الأنظمة القديمة، إذا أدرجت support-v4 في
النص البرمجي لـ Gradle، ستشتمل حزمة APK على جميع هذه الوحدات. ومع ذلك، يمكن تقليل
لحزمة APK، فنوصي بإدراج الوحدات المحددة التي يحتاجها تطبيقك.
تحديثات واجهة برمجة التطبيقات
- يمكن للعملاء الذين يستخدمون علامات التبويب المخصّصة
للتحكم في ما إذا كان ينبغي فتح التطبيقات الفورية أم لا. (يُرجى ملاحظة أنّ "التطبيقات الفورية" لم تتم إضافتها بعد
متاحة للجمهور العام.) لتفعيل التطبيقات الفورية أو إيقافها، يُرجى الاتصال بـ
CustomTabsIntent.Builder.setInstantAppsEnabled()أو تحديدEXTRA_ENABLE_INSTANT_APPSبشكل افتراضي، ستخضع علامات التبويب المخصصة افتراضيًا إلى تمكين التطبيقات الفورية، عندما تصبح هذه الميزة متوفرة. - يتيح
TextInputLayoutاستخدام زر إيقاف/تفعيل إمكانية رؤية كلمة المرور من مواصفات التصميم المتعدد الأبعاد. android.support.transitionالجديد تعمل الحزمة على نقل إطار عمل عمليات النقل إلى مستويات واجهة برمجة التطبيقات 14. وأعلى. لمزيد من المعلومات، يُرجى الاطّلاع على مرجعandroid.support.transition.- مكتبة دعم علامات التبويب المخصَّصة
إتاحة استخدام
RemoteViewsفي الخدمات الثانوية شريط الأدوات.setToolbarItem()الحالي تم إيقاف العمل بها الآن. - يضيف
AppCompatResourcesإمكانية تحميل<vector>(على المستوى 9 من واجهة برمجة التطبيقات والمستويات الأعلى)<animated-vector>(على مستوى واجهة برمجة التطبيقات 11 والأعلى) من معرِّف المورد، باستخدام الطريقة الجديدةgetDrawable(). - يمكن الآن استخدام "
CoordinatorLayout" وتحديد طرق عرض داخلية، وتحديد أن وجهات النظر الأخرى يجب أن تجنب المساحة الداخلية طرق العرض. وهذا يسمح للتطبيقات بتكرار أنماط سلوكية مشابهة للطريقةFloatingActionButtonينتقل من لـSnackbar، ولكن لأي المشاهدات العشوائية الثانوية لمزيد من المعلومات، يُرجى مراجعةLayoutParams.insetEdgeوLayoutParams.dodgeInsetEdgesالمستندات المرجعية - يمكن لفئة
DiffUtilالجديدة أن تحسب الفرق بين اثنين ويمكنك إرسال قائمة بعمليات التحديث المناسبة إلىRecyclerView.Adapter. -
تمت إضافة
RecyclerView.OnFlingListenerإلى الدعم المخصّص. السلوك استجابةً للقفز.SnapHelperإجراء تنفيذ بشكل خاص لاستقطاب المشاهدات الفرعية،LinearSnapHelperتوسّع الفئة هذا التنفيذ لتوفير التقاط محاذاة بالوسط سلوك مشابه لـViewPager. - تتيح مكتبة "علامات التبويب المخصّصة" الآن للعملاء طلب العلامة العادية
واجهة مستخدم المتصفح، بدلاً من واجهة مستخدم علامات التبويب المخصصة، من خلال استدعاء
CustomTabsIntent.setAlwaysUseBrowserUI()هذا السلوك هو يكون مفيدًا في الحالات التي يكون فيها المتصفح الافتراضي على واجهة مستخدم علامات التبويب المخصصة ولكن أعرب عن تفضيله لواجهة مستخدم المتصفح القياسية.
تغييرات السلوك
- إذا كنت تستخدم وظيفة اليوم/الليل في مكتبة التطبيقات، لن
الآن يعيد إنشاء نشاطك تلقائيًا كلما تغيّر الوضع النهاري/الليلي
(إما بسبب الوقت من اليوم، أو بسبب مكالمة إلى
AppCompatDelegate.setLocalNightMode()). - يتراجع "
Snackbar" الآن عن شريط التنقل إذا كان شريط الحالة شفافًا.
مكتبة MediaRouter
لن يتم إدراج الأجهزة التي تتضمّن بلوتوث كمسارات للوسائط. يتم توجيه الصوت إلى يتم الآن التحكّم في الأجهزة التي تتضمّن بلوتوث فقط على مستوى نظام Android.
عمليات الإيقاف نهائيًا
وتخضع الفئات والطرق المتوقّفة نهائيًا للإزالة في إصدار مستقبلي. عليك نقل البيانات من واجهات برمجة التطبيقات هذه في أقرب وقت ممكن.
- كانت هناك عدة طرق للفئات التالية مطلوبة فقط لواجهة برمجة التطبيقات 8
أقل، ويجب ألا يتم استخدامها بعد ذلك. وبدلاً من ذلك، استخدِم إطار العمل
وعمليات التنفيذ.
android.support.v4.view.KeyEventCompat: استبدال بـKeyEventandroid.support.v4.view.MotionEventCompat: استخدِمMotionEvent.android.support.v4.view.ViewCompat: استخدِمView.android.support.v4.view.ViewConfigurationCompat: استخدِمViewConfiguration.
-
AccessibilityServiceInfoCompat.getDescription()تم إيقافها لصالحAccessibilityServiceInfoCompat.loadDescription(), تعرض وصفًا مترجمًا بشكل صحيح. - يجب عدم إنشاء مثيل للفئة
ActivityCompat. مباشرةً. سيتم استخدام طريقةgetReferrer(Activity)غير الثابتة: ثابتًا في إصدار قادم. - تم إيقاف
CoordinatorLayout.Behavior.isDirty()نهائيًا ولم يعُد. تم الاتصال به بواسطةCoordinatorLayout. أي تقييم وعمليات التنفيذ، بالإضافة إلى إزالة أي استدعاءات لهذه الطريقة. - تم إيقاف
MediaSessionCompat.obtain()واستبداله. بطريقة أكثر ملاءمةfromMediaSession() - تم إيقاف
MediaSessionCompat.QueueItem.obtain()نهائيًا واستبداله بـ من أنسب طريقةfromQueueItem() - وقد تم إيقاف العديد من الفئات التجريدية واستبدالها
والواجهات التي تعكس بشكل أوثق المكافِئات في أطرها.
AccessibilityStateChangeListenerCompatتم استبداله بـAccessibilityManagerCompat.AccessibilityStateChangeListenerمن واجهة pyplot.- يمتلك
OnCloseListenerCompatليحل محلها واجهةSearchViewCompat.OnCloseListener. OnQueryTextListenerCompatتم استبداله بـSearchViewCompat.OnQueryTextListenerمن واجهة pyplot.
- تم إيقاف
CustomTabsSession.setToolbarItem()واستبداله المستندة إلى RemoteViewssetSecondaryToolbarViews()
إصلاح الأخطاء
تم إصلاح المشاكل المعروفة التالية في الإصدار 24.2.0:
- التأكّد من ظهور مؤشر
SwipeRefreshLayoutعند يتم استدعاءsetRefreshing(true)قبل تصريح القياس الأول (AOSP) المشكلة 77712) - منع
TabLayoutمن الوميض أثناء تغيير الصفحات (AOSP) المشكلة 180454) - تجنُّب
ClassNotFoundExceptionعند التقدُّم في مستويات اللعبSavedStateعلى المستوى 11 أو أقل لواجهة برمجة التطبيقات (مشكلة في AOSP) 196430)
تتوفر قائمة كاملة بإصلاحات الأخطاء العامة على أداة تتبُّع مشاكل AOSP
المراجعة 24.1.1
تموز (يوليو) 2016
المشاكل التي تم إصلاحها:
- إصلاح مشكلة في الإصدار 24.1.0 أثرت في أرقام تعريف الموارد المشتركة بين مكتبات الدعم. وتسببت هذه المشكلة في جعل التطبيقات تعتمد على دعم المكتبات بالموارد (مثل التصميم وAppcompat) المشكلات الناجمة عن عدم تطابق معرف المورد.
المراجعة 24.1.0
تموز (يوليو) 2016
- التغييرات في دعم الإصدار 4 المكتبة:
-
NotificationCompat.Action.WearableExtendergetHintDisplayActionInline()جديدsetHintDisplayActionInline()طريقة للتوافق مع معاينة Android Wear 2.0. وتتيح هذه الطرق للتطبيق تحديد وجوب تنفيذ إجراء بشكل مضمّن مع الإشعار.- لن يؤدي طلب الرقم
Fragment.setUserVisbileHint()إلى أن يصبح الجزء بعد الآن. تم البدء إذا تمت إضافة التلميح إلىFragmentTransactionلم يتم الالتزام به بعد. هذا النمط يؤثر في مستخدميFragmentPagerAdapterوالذي إلغاءsetUserVisbileHint()وافتراض حالة محددة لدورة حياة الجزء بعد الاتصال بـsuper.setUserVisibleHint(). لمزيد من المعلومات يُرجى الاطّلاع على الصفحة المرجعية لمستنداتFragment.setUserVisbileHint().
المشاكل التي تم إصلاحها:
- TabLayout.setCustomView(null) يؤدي إلى NullPointerException (مشروع إحالة ناجحة مفتوحة المصدر (AOSP) المشكلة رقم 214753)
- TabLayout يميّز علامات التبويب المخصصة بشكل غير صحيح (مشكلة AOSP 214316)
- يستخدم AppCompatTextHelper مصفوفة سمة تم ترتيبها بشكل غير صحيح (مشكلة AOSP 214366).
- لا يمكن الإشارة إلى VectorDrawable من ملف XML لحاوية قابلة للرسم عند استخدام custom ContextWrapper (مشكلة AOSP 214055)
- ViewDragHelper.saveLastMotion() يطرح ArrayIndexOutOfBoundsException (مشروع إحالة ناجحة مفتوحة المصدر (AOSP) المشكلة رقم 212945)
- توسيع BottomSheetBehavior إلى ارتفاع المحتوى القديم عند استخدام setState(state_EXPANDED) (مشكلة في AOSP 213660)
- لا تتعامل قابلة للطي مع الأدوات الثانوية القابلة للتثبيت التي تتضمن الجزء العلوي أو الهوامش السفلية (مشكلة في AOSP 213001)
- لا يدعم عنوان تصفح Leanback محاذاة RTL (مشكلة AOSP) 213461)
- اختفاء PagerTabStrip بسبب عدم توفّر تعليق توضيحي مكتسب (مشكلة في AOSP) 213359).
- يؤدي ربط البيانات إلى طرح NullPointerException عند استخدام قيمة منطقية لتحديد العلامات الشرطية (مشكلة في AOSP) 191841)
- لا يستجيب CoordinatorLayout لـ setFitsSystemWindows() (مشكلة AOSP) 212720)
- يتعطّل BottomSheetBehavior عند ضبط الحالة الأولية (مشكلة AOSP) 203114)
- يتخطّى ViewPager الصفحات إذا كان فهرس الصفحة كبيرًا (مشكلة في AOSP) 211734)
- لا يعمل BottomSheetBehavior مع التنسيقات الديناميكية (مشكلة AOSP) 205226)
مراجعة 24.0.0
حزيران (يونيو) 2016
- التغييرات في دعم الإصدار 4 المكتبة:
-
- تاريخ الإضافة:
Fragment.commitNow()للالتزام المتزامن - تاريخ الإضافة:
NotificationCompat.MessagingStyleللمحادثات المتعددة الأطراف - تاريخ الإضافة:
NotificationManagerCompat.areNotificationsEnabled()وgetImportance() MediaSessionCompatتعكس الآن وظائفMediaSessionولم تعد تطلبsetMediaButtonReceiver()تلقائيًا
ملاحظة: لا يتوفّر سوى
MediaBrowserServiceCompatفي الإصدار 24.0.0 متوافق مع الإصدارات المستقبلية من نظام التشغيل Android الأحدث من واجهة برمجة التطبيقات 24. إذا كنت تستخدم إصدارات سابقة، يُرجى التحديث إلى هذا الإصدار من أجل لضمان التوافق. - تاريخ الإضافة:
- تغييرات الإصدار 7 Appcompat:
-
- تمت إضافة إمكانية الإشارة إلى عناصر
ColorStateListذات طابع خاص من XML.
- تمت إضافة إمكانية الإشارة إلى عناصر
- تغييرات لدعم التصميم المكتبة:
-
- تحسينات على
AppBarLayoutمعالجة الارتفاع باستخدامStateListAnimator
- تحسينات على
- تغييرات مكتبة الإصدار 17 Leanback:
-
- تمت إضافة
OnboardingFragmentلتوفير رسالة ترحيب التشغيل لأول مرة. وعملية الإعداد
- تمت إضافة
- تغييرات علامات التبويب المخصَّصة:
-
- تمت إضافة الدعم لتوفير
RemoteViews. التسلسل الهرمي لشريط الأدوات الثانوي - تاريخ الإضافة:
CustomTabsClient.connectAndInitialize()للإعداد من سطر واحد
- تمت إضافة الدعم لتوفير
المراجعة 23.4.0
أيار (مايو) 2016
- التغييرات في دعم الإصدار 4 المكتبة:
-
- تم إصلاح مشكلة إضافة الأجزاء بترتيب غير صحيح. (المشكلة 206901)
- تم إصلاح مشكلة عدم رسم شريط التطبيق بعد الانتقال للأعلى أو للأسفل خارج الشاشة. (المشكلة 178037)
- تغييرات الإصدار 7 Appcompat:
-
- تمت الإضافة
AppCompatDelegate.setCompatVectorFromResourcesEnabled()إعادة تفعيل استخدام عناصر المتّجهات القابلة للرسم في كائناتDrawableContainerعلى الأجهزة الإصدار 4.4 من نظام التشغيل Android (المستوى 19 لواجهة برمجة التطبيقات) أو الإصدارات الأقدم. راجِع الإصدار 23.2 من AppCompat — عمر المتّجهات مزيد من المعلومات. - تم إصلاح مشكلة في واجهة برمجة التطبيقات 23 ذات الصلة
AppCompatDelegate.setDefaultNightMode()لا تحميل موارد صحيحة في المستوى 23 من واجهة برمجة التطبيقات (المشكلة 206573). - تم إصلاح المشكلة التي قد تتسبب في
NullPointerException. (المشكلة 207638)
- تمت الإضافة
- تغييرات لدعم التصميم المكتبة:
-
- تم إصلاح المشكلة المتمثلة في عدم محو
TextInputLayoutللخطأ تعديل اللون بعدsetErrorEnabled(false)للمستوى 21 - 22 لواجهة برمجة التطبيقات (مشكلة 202829) - تم إصلاح المشكلة المتمثلة في عدم عرض
FloatingActionButtonعند تعطيل الرسوم المتحركة. (المشكلة 206416) - تم حل المشكلة في
AppBarLayoutوظيفة المحاذاة عند استخدامها مععلامة تمرير. (المشكلة 207398)scroll|enterAlways|enterAlwaysCollapsed|snap
- تم إصلاح المشكلة المتمثلة في عدم محو
- تغييرات لمكتبة Vector القابلة للرسم:
-
- تم إصلاح الخطأ الذي يؤديه
VectorDrawableCompatلا يتم عرضها بشكل صحيح فيTextViewفي المستوى 23 من واجهة برمجة التطبيقات (المشكلة 206227)
- تم إصلاح الخطأ الذي يؤديه
المراجعة 23.3.0
نيسان (أبريل) 2016
- التغييرات في دعم الإصدار 4 المكتبة:
-
- تمت إضافة
AppLaunchCheckerللمساعدة في تتبُّع مستوى أداء تطبيقك تم إطلاقه من قِبل المستخدم في الماضي. يتيح لكhasStartedFromLauncher()معرفة ما إذا كان المستخدم قد تشغيل تطبيقك من الشاشة الرئيسية من قبل، أو إذا كان يتضمن طرق أخرى (على سبيل المثال، لعرض صفحات ويب محددة عناوين URL). - تم إصلاح تسرب الذاكرة في
MediaBrowserServiceCompat.mConnections(المشكلة 205220) - تم إصلاح المشكلة المتمثلة في
ViewPagerلا يأخذ في الاعتبار هوامش الصفحة عند قلب الصفحة. (المشكلة 203816). - تم تسليم
Fragment.onRequestPermissionsResult()إلى الطفل الأجزاء.
- تمت إضافة
- تغييرات الإصدار 7 Appcompat:
-
- تم إصلاح مشكلة في "
AppCompatSpinner" قد تتسبب في ستظهر نوافذ منبثقة متعددة. (المشكلة 205052) - تم إصلاح مشكلة تتعلق بكيفية تلوين الأزرار بلا حدود. (المشكلة 202967)
- تم إصلاح مشكلة التوافق بين
AppCompatDialogFragmentوAlertDialog. (المشكلة 204805) - تم إلغاء التغييرات الأخيرة على
TintResourcesالتي كانت تتسبب في حدوث حدوث مشاكل في الذاكرة والإعدادات. (المشكلة 205236).
- تم إصلاح مشكلة في "
- تغييرات الإصدار 7 مكتبة Mediarouter:
-
- تم الإصلاح في
MediaRouteControllerDialogسلوك شريط تمرير مستوى الصوت (المشكلة 202299)
- تم الإصلاح في
- التغييرات التي طرأت على الإعدادات المفضّلة للإصدار 7 المكتبة:
-
- تم إصلاح مشكلة تعطُّل
PreferenceFragmentCompatإذا تم تحديدdividerHeight. (المشكلة 204778)
- تم إصلاح مشكلة تعطُّل
- تغييرات الإصدار 7 مكتبة إعادة التدوير:
-
- تم إصلاح الخطأ المتمثل في عدم استدعاء
RecyclerViewللتمرير. في حالة تقليص نطاق العناصر المرئية. (المشكلة 200987). - تم إصلاح الخطأ الذي كان يؤدي إلى توقُّف "
RecyclerView" عن العمل. التخطيط الخطي، ومرجحة، وتتضمن صورًا. (المشكلة 203276). - تم إصلاح عطل في
OrientationHelper.getStartAfterPadding(). (المشكلة 180521) - تم إصلاح عطل في استخدامات
android:nestedScrollingEnabled(المشكلة 197932)
- تم إصلاح الخطأ المتمثل في عدم استدعاء
- تغييرات لدعم التصميم المكتبة:
-
- تم إصلاح الخطأ الذي كان يعالج فيه البطاقة السفلية المخفية اللمس. أحداث. (المشكلة 203654).
- تم إصلاح مشكلة تنسيق في
BottomSheetBehaviorعند قيمةfitsSystemWindowsصحيحة. (المشكلة 203057) - تم إصلاح مشكلة تسهيل الاستخدام في "
Snackbar". (المشكلة 182145) - تم إصلاح عطل في
Snackbarالتمرير السريع. (المشكلة 203924) - تم إصلاح خطأ في "
AppBarLayout" فيenterAlways(المشكلة 203661) - تم إصلاح الخطأ الذي أدى إلى محو
TextInputLayoutبشكل غير ضروري. فلتر لون خلفية عنصرEditText(المشكلة 203357).
المراجعة 23.2.1
آذار (مارس) 2016
- التغييرات في دعم الإصدار 4 المكتبة:
-
- تم إصلاح استثناء في
DrawableCompat.wrap()وLayerDrawableفي مستويات واجهة برمجة التطبيقات من 17 إلى 19 (مشكلة 201817) - تم إصلاح
ArrayIndexOutOfBoundsExceptionفيViewDragHelper.shouldInterceptTouchEvent(). (المشكلة 182262). - تم إصلاح خطأ في "
ViewPager" بشأن حساب التمرير لتغييرات الحجم. - تم إصلاح
NullPointerExceptionعند استدعاءDrawerLayout.removeDrawerListener()بدون مجموعةDrawerLayout.DrawerListener. (المشكلة 202478) - تم إصلاح الخطأ المتمثل في عدم ضبط
ViewPagerمَعلماتAccessibilityEventبشكل صحيح عند التمرير - تم إصلاح مشكلة تسبّبت في حدوث تأخّر أثناء تدوير الجهاز عند استخدام
Drawable.wrap()(عدد 201924)
- تم إصلاح استثناء في
- تغييرات الإصدار 7 Appcompat:
-
- تمت إعادة الاعتماد على أصول المتجه بحيث يمكن للمطورين الذين يستخدمون
تطبيق متوافق
المكتبة لا يتم فرض استخدام
VectorDrawableوعلامات الإصدار المرتبطة بها. - تم إصلاح مشكلة التوافق في "الوضع الليلي" والمستوى 23 من واجهة برمجة التطبيقات. (المشكلة 201910)
- تم إصلاح مشكلة التوافق في
SwitchCompatوالمستوى 7 من واجهة برمجة التطبيقات. (عدد 201942) - تم إصلاح مشكلة متعلّقة بنشر قيم الإعداد في عناصر "الموارد" مشكلة 201928
- تم إصلاح مشكلة التوافق المتمثلة في
android.support.v7.app.NotificationCompat.MediaStyleيصبح زر الإلغاء غير مرئي على مستوى واجهة برمجة التطبيقات 21 والأقل. (المشكلة 202156) - تم إصلاح عُطل التوافق مع
AppCompatSpinnerفي المستوى 21 من واجهة برمجة التطبيقات والمستويات الأدنى. (المشكلة 202246) - تم إصلاح مشكلة عدم ظهور نمط
app:textAllCaps = "false"عملك. (المشكلة 202117) - تم إصلاح عطل أثناء استعادة
SearchView. (المشكلة 201836) - تم إصلاح تسرّب الذاكرة الذي يحدث عند تلوين الموارد القابلة للرسم باستخدام AppCompat (المشكلة 202379)
- تم إصلاح مشكلة في
KeyEventعلى المستوى 11 لواجهة برمجة التطبيقات أَقَل (المشكلة 202939)
- تمت إعادة الاعتماد على أصول المتجه بحيث يمكن للمطورين الذين يستخدمون
تطبيق متوافق
المكتبة لا يتم فرض استخدام
- التغييرات في مشاهدة البطاقات الإصدار 7 من Google المكتبة:
-
- تمت إضافة دعم "الوضع الليلي" لـ "
CardView". (المشكلة 194497)
- تمت إضافة دعم "الوضع الليلي" لـ "
- تغييرات الإصدار 7 مكتبة إعادة التدوير:
-
- تم إصلاح الأخطاء المتعلقة بالطرق المختلفة لمواصفات القياس. (المشكلة 201856)
- تم تقليل فترة الإغلاق التي لا يسمح فيها
RecyclerViewباستخدام المحوّل. التغييرات أثناء حساب التخطيط أو التمرير. (المشكلة 202046) - تم إصلاح تعطُّل عند الاتصال بـ
notifyItemChanged()بشأن عنصر غير مرئي. (المشكلة 202136) - تم إصلاح العطل الذي يحدث عند إضافة
RecyclerView.LayoutManagerمشاهدة وإزالتها بطاقة قياس الأداء. (المشكلة 193958)
- تغييرات الإصدار 7 مكتبة Mediarouter:
-
- تم إصلاح العُطل الذي كان يحدث عند طلب
MediaRouter.getInstance()في المستوى 17 من واجهة برمجة التطبيقات. (المشكلة 180654)
- تم إصلاح العُطل الذي كان يحدث عند طلب
- التغييرات في الإصدار 17 مكتبة Leanback:
-
- تم إصلاح مشكلة في "
GridLayout.onAddFocusables()" كانت أدى إلى اختيار عنصر خاطئ. - تم إصلاح المشكلة في
GuidedStepFragmentإجراءات تختفي بعد طي إجراء.
- تم إصلاح مشكلة في "
- تغييرات لدعم التصميم المكتبة:
-
- تم إصلاح عطل في
TabLayoutبسبب تجميع علامات التبويب. (المشكلة 201827) - تم إصلاح خطأ في "
NavigationView" تسبّب في حدوث الخطأ اللون ليتم تحديده. (المشكلة 201951) - تم إصلاح خطأ تعذّر على "
setBackgroundTintList()" تغيير الخلفية فيه. اللون. (المشكلة 201873) - تم إصلاح المشكلة المتمثلة في عدم الانتقال بشكل كامل في
AppBarLayout. تكون غير مرئية عند استخدامها معandroid:fitsSystemWindows = “true”. (المشكلة 201822) - تم إصلاح المشكلة المتمثلة في عدم عرض
BottomSheetDialogمشاهدات المحتوى القصير بشكل صحيح. (المشكلة 201793) - تم إصلاح مشكلة متعلّقة بنقل حساب "
BottomSheetDialogFragment" بشكل متقطع عندما تم تغيير المحتوى الداخلي. (المشكلة 202125). - تم إصلاح عطل في رابط عدّاد TextInputLayout
- تم إصلاح عطل كان يحدث عند استعادة
TextInputLayout.getCounterMaxLength()لحالة محفوظة. (المشكلة 202375). - تم إصلاح خطأ
ClassCastExceptionالذي حدث عند استعادةCoordinatorLayoutباستخدام الحالة المحفوظة لعرض لم يكنCoordinatorLayout.
- تم إصلاح عطل في
- تغييرات VectorDrawableCompat:
-
- تم إصلاح الخطأ المتمثِّل في قراءة المتغيّر الخطأ للحساب
android:tintMode. (المشكلة 201907)
- تم إصلاح الخطأ المتمثِّل في قراءة المتغيّر الخطأ للحساب
المراجعة 23.2.0
شباط (فبراير) 2016
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- تمت إضافة
MediaBrowserCompatلدعمMediaBrowserوMediaBrowserServiceCompatلدعمMediaBrowserService. هذا مفيد عند توصيل خدمة الخلفية الخاصة بتطبيق وسائط بمكونات واجهة المستخدم، والتكامل مع Android Auto وAndroid Wear بدون الحاجة إلى المستوى 21 من واجهة برمجة التطبيقات أو المستويات الأعلى - يطلب النظام الآن
onActivityResult()للحصول علىFragmentActivityالمدمجة.
- تمت إضافة
- التغييرات على الإصدار 7 من AppCompat المكتبة:
-
- تمت إضافة وظيفة "الوضع الليلي" إلى المستوى 14 من واجهة برمجة التطبيقات والمستويات الأعلى. المبدل (Switch) بين Material المظهر الفاتح والمظهر الداكن استنادًا إلى الوقت من اليوم الخاص بالتطبيق.
-
- يمكن العثور على مظاهر النهار والليل هنا:
<sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml AppCompatDelegate.setDefaultNightMode(): تعيين الوضع الافتراضي للتطبيق من خلال تمرير أحد الثوابت التالية:-
MODE_NIGHT_AUTOMODE_NIGHT_NOMODE_NIGHT_YESMODE_NIGHT_FOLLOW_SYSTEM
AppCompatDelegate.setLocalNightMode(): عمليات إلغاء إعداد الوضع الليلي لمكون التطبيق المحلي.AppCompatDelegate.getDefaultNightMode(): إرجاع المشتريات هو الوضع الليلي الافتراضي.
- يمكن العثور على مظاهر النهار والليل هنا:
- تغييرات في v7 mediarouter المكتبة:
-
MediaRouteControllerDialogالآن يطبِّق ألوان مظاهر التطبيق المخصّصة بشكلٍ صحيح.
- التغييرات في مكتبة دعم التصميم:
-
- دعم مضاف للإعلانات الجزء السفلي
وأوراق البيانات. المكوّن الإضافي للتفاعل،
BottomSheetBehavior، يسمح بعرض فرعي لـCoordinatorLayoutبدور ورقة سفلية. توفر الفئة الأساسية،BottomSheetCallback، عمليات الاستدعاء لمراقبة أحداث البطاقة السفلية.
- دعم مضاف للإعلانات الجزء السفلي
وأوراق البيانات. المكوّن الإضافي للتفاعل،
- التغييرات في إتاحة علامات التبويب المخصّصة المكتبة:
-
- متصفّح Chrome تتيح الآن علامات التبويب المخصصة للتطبيقات تضمين شريط سفلي مع إجراء بالإضافة إلى زر الإجراء العلوي الحالي.
CustomTabsIntent.Builder.addToolBarItem(): يضيف إجراءً إلى علامة تبويب مخصصة. يمكنك استخدام هذا الزر لإضافة أزرار متعددة.CustomTabsSession.setToolBarItem(): لتعديل العناصر المرئية لعناصر شريط الأدوات. لن تنجح هذه الطريقة إلا إذا تم منحها معرّف صالح وجلسة المتصفح في المقدّمة.
- تمت إضافة مكتبة دعم VectorDrawable:
-
- الصفوف التي تمت إضافتها:
-
VectorDrawableCompatAnimatedVectorDrawableCompat
- إتاحة استخدام
VectorDrawableمادة عرض في التطبيقات تعمل على المستوى 7 من واجهة برمجة التطبيقات أو المستويات الأعلى مادتَا عرض (AnimatedVectorDrawable) متاحة أيضًا على المستوى 11 أو أعلى لواجهة برمجة التطبيقات. يمكن أن تكون أصول المتجهات أصغر بكثير من مواد عرض الصور ويجب أن يساعد في تقليل حجم التطبيق الحجم عن طريق تقليل كمية الأصول المطلوبة لدعم مصادر متعددة شاشات الأجهزة. - تعتمد هذه المكتبة الآن على مكتبة AppCompat الإصدار 7، ما يسمح
المطوّرون وAppCompat
لاستخدام العناصر القابلة للرسم المتجهة بسهولة. لاستخدام
VectorDrawableCompatفيImageButtonأوImageView، يُرجى استخدامapp:srcCompatXML السمة أوsetImageResource(). - لمواصلة الإشارة إلى معرّفات السمات في المستوى 20 من واجهة برمجة التطبيقات أو
أسفل، أضِف علامة
apptالتالية إلى ملفbuild,gradle: -
- إذا كنت تنشئ باستخدام مكوّن Android الإضافي لنظام Gradle 1.5.0 أو
أقل، أضِف ما يلي إلى ملف
build.gradle: -
android { defaultConfig { // Stops the Gradle’s automatic rasterization of vectors generatedDensities = [] } // Flag that tells aapt to keep the attribute ids aaptOptions { additionalParameters "--no-version-vectors" } }
- إذا كنت تنشئ باستخدام مكون Android الإضافي لنظام Gradle 2.0.0 أو
أضِف ما يلي إلى ملف
build.gradle: -
android { defaultConfig { vectorDrawables.useSupportLibrary = true } }
- إذا كنت تنشئ باستخدام مكوّن Android الإضافي لنظام Gradle 1.5.0 أو
أقل، أضِف ما يلي إلى ملف
- تغييرات الإصدار 17 Leanback المكتبة:
-
- تمت إضافة إمكانات جديدة إلى
GuidedStepFragment، وهو مكون يوجه المستخدمين من خلال قرار أو سلسلة من القرارات: -
- تمت إضافة إجراءات الزر إلى
GuidedAction: GuidedStepFragment.setButtonActions(): يحدّد قائمةGuidedActionأزرار التي يمكن للمستخدم تحديدها من شاشة عرض "الإجراءات".- أصبحت حقول الوصف قابلة للتعديل الآن:
-
GuidedAction.Builder.descriptionEditable(): عند اجتياز الاختبارtrue، تضبط وصف الإجراء ليكون قابلاً للتعديل.GuidedAction.getEditDescription(): يعرض العنصر القابل للتعديل الوصف باعتبارهCharSequence.
- إضافة قوائم منسدلة للإجراءات الفرعية:
-
GuidedAction.setSubActions(): لضبط قائمةGuidedActionكقائمة منسدلة وقائمة الإجراءات الفرعية.
- تمت إضافة إجراءات الزر إلى
- تمت إضافة التطبيق المصغّر "
GuidedDatePickerAction" لوظيفة "DatePicker": -
- يتم تحديد التاريخ باستخدام أعمدة السنة والشهر واليوم ويمكن أن يحتوي على نطاق قابل للتخصيص.
GuidedDatePickerAction.Builder: فئة أداة إنشاء العنصرGuidedDatePickerActionGuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat): ضبط تنسيق التاريخ المطلوب من خلال تمرير مناسبة من ثلاثة أحرفString، على سبيل المثال“YMD”أو“MDY”. ويمكنك بدلاً من ذلك استخدام سمة XMLdatePickerFormat.
- تمت إضافة إمكانات جديدة إلى
- تغييرات الإصدار 7 من RecyclerView المكتبة:
-
- يتوفّر خيار الموافقة في "
RecyclerView" الآن. تسمى القياس التلقائي وهي تتيح لـRecyclerView.LayoutManagerالتفاف المحتوى أو التعامل مع مواصفات قياس مختلفة مقدمة من أصلRecyclerView. أُنشأها جون هنتر، الذي كان متخصصًا يتيح استخدام كل إمكانيات الصور المتحركة الحالية فيRecyclerView. -
- إذا كان لديك
RecyclerView.LayoutManagerمخصص، الاتصال بـsetAutoMeasureEnabled(true)لبدء استخدام واجهة برمجة التطبيقات AutoMeasurement API كل العناصر المدمجةRecyclerView.LayoutManagerتفعيل القياس التلقائي تلقائيًا RecyclerView.LayoutManagerلم يعد يتجاهل بعض إعداداتRecyclerView.LayoutParams، مثلMATCH_PARENTفي اتجاه التمرير.ملاحظة: قد تؤدي هذه القيود المزالة إلى سلوك غير متوقع في التخطيطات لديك. احرص على تحديد معلمات التخطيط الصحيحة.
- إذا كان لديك
- عند تحديث
RecyclerView.ViewHolderبالحمولة المعلومات،DefaultItemAnimatorيقوم الآن بتعطيل تغيير الرسوم المتحركة. - يمكنك الآن تعديل سرعة الهروب
ItemTouchHelperإلى للتحكم في حساسية التمرير السريع. لتسهيل التمرير السريع أو صعوبة التمرير، إلغاءgetSwipeEscapeVelocity(float defaultValue)وتعديلdefaultValue.
- يتوفّر خيار الموافقة في "
المراجعة 23.1.1
تشرين الثاني (نوفمبر) 2015
- تغييرات مكتبة إعادة التدوير الإصدار 7:
-
- تم إصلاح العطل الذي يحدث عند تنفيذ إجراء تمرير سريع للإغلاق
توفر فئة الأداة
ItemTouchHelper، ثم تضيف عنصرًا. (المشكلة 190500)
- تم إصلاح العطل الذي يحدث عند تنفيذ إجراء تمرير سريع للإغلاق
توفر فئة الأداة
- تغييرات مكتبة الإعدادات المفضّلة للإصدار 7:
-
- تم إصلاح مشكلة استخدام ProGuard. (المشكلة 183261)
- تغييرات مكتبة دعم الإصدار 17 من Leanback:
-
- تم إصلاح عدد من المشكلات الداخلية في هذه المكتبة.
- التغييرات في مكتبة دعم التصميم:
-
- تمت إضافة الطريقة
getHeaderViewإلى الصفNavigationView. - تم إصلاح مشكلة خلفية شفافة لعنصر
FloatingActionButtonعلى الأجهزة التي تعمل بنظام التشغيل Android 4.0 (المستوى 15 لواجهة برمجة التطبيقات) والإصدارات الأقدم. (المشكلة 183315)
- تمت إضافة الطريقة
المراجعة 23.1.0
تشرين الأول (أكتوبر) 2015
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- تمت إضافة دعم واجهة
OnScrollChangedListenerإلى التطبيق المصغَّر "NestedScrollView" أُنشأها جون هنتر، الذي كان متخصصًا يسمح لك بتلقي استدعاءات عند تغيير موضع التمرير X أو Y. - تمت إضافة فئة
MediaButtonReceiverلإعادة توجيه عناصر التحكّم في التشغيل التي تم استلامها. إلى خدمة تدير الفئةMediaSessionCompat. تشير رسالة الأشكال البيانية يتضمّن صف واحد (MediaSessionCompat) دالة إنشاء يمكنها العثور تلقائيًا على متلقي زر وسائط في البيان. حاسمة يُعد جهاز استقبال زر الوسائط جزءًا أساسيًا لمعالجة عناصر التحكّم في التشغيل من الأجهزة أو عناصر التحكّم في البلوتوث.
- تمت إضافة دعم واجهة
- التغييرات التي طرأت على مكتبة تطبيقات v7 المتوافقة:
-
- تمت إضافة التصميم المتعدد الأبعاد
SeekbarوImageButtonالتطبيقات المصغّرة. - تم تعديل التطبيق المصغّر "
ImageView" لإتاحة ميزة "تعديل اللون". - تم تعديل شكل ومظهر تطبيق "
SwitchCompat" المصغّر.
- تمت إضافة التصميم المتعدد الأبعاد
- التغييرات في مكتبة Mediarouter v7:
-
- تمّت إضافة الميزات التالية إلى الفئة
MediaRouteChooserDialog: - عرض صفحة تحميل أثناء اكتشاف مزوّدي مسارات الوسائط
- تشتمل على رمز نوع الجهاز للتعرف على الجهاز بسهولة أكبر.
- ترتيب المسارات وفقًا لتكرار الاستخدام في التطبيق الحالي.
- تتيح هذه الميزة الوضع الأفقي.
- تمّت إضافة الميزات التالية إلى الفئة
MediaRouteControllerDialog: - يتعرّف على بث الشاشة ويقدم وصفًا مناسبًا.
- يدعم أحجام صور الألبوم ونسب العرض إلى الارتفاع المتنوعة، ويحمّل العمل الفني بشكل غير متزامن.
- يتم اختيار لون المحتوى تلقائيًا استنادًا إلى اللون الأساسي للتطبيق.
- يتم ضبط تنسيق مربع الحوار بناءً على مساحة الشاشة المتاحة على الجهاز.
- تتيح هذه الميزة الوضع الأفقي.
- تمّت إضافة الميزات التالية إلى الفئة
- التغييرات في مكتبة لوحات الإصدار 7:
-
- تمت إضافة الطريقة
setRegion()لإتاحة استخراج اللون من لون محدَّد. منطقة كائنBitmap.
- تمت إضافة الطريقة
- تغييرات مكتبة إعادة التدوير الإصدار 7:
-
- تمت إضافة واجهة برمجة تطبيقات مُحسَّنة للصور المتحركة إلى فئة "
ItemAnimator" للحصول على تجربة أفضل. التخصيصات: - لم يعد تغيير الصور المتحركة يفرض نسختين من الكائن
ViewHolder، والتي تعمل على تفعيل الرسوم المتحركة لمحتوى العنصر. وسيستخدم الكائنItemAnimatorأيضًا ما إذا كان يريد إعادة استخدام كائنViewHolderنفسه أو إنشاء جديدة. - تمنح واجهة برمجة التطبيقات الجديدة لسجلّ المعلومات فئة
ItemAnimatorمرونة جمع البيانات في النقطة الصحيحة من دورة حياة التخطيط. يتم عرض هذه المعلومات لاحقًا يتم تمريره إلى استدعاءات الرسوم المتحركة.
- تم توفير خطة انتقال سهلة لتغيير واجهة برمجة التطبيقات غير المتوافقة مع الأنظمة القديمة:
- إذا سبق لك تمديد الصف الدراسي
ItemAnimator، يمكنك إجراء تغيير. الفئة الأساسية إلىSimpleItemAnimatorومن المفترض أن يعمل الرمز كما في السابق. توفّر الفئةSimpleItemAnimatorواجهة برمجة التطبيقات القديمة من خلال تضمين واجهة برمجة التطبيقات الجديدة. - تمّت إزالة بعض الطرق من الفئة
ItemAnimator. ما يلي: لن يتم تجميع التعليمة البرمجية بعد الآن:
Kotlin
recyclerView.itemAnimator.supportsChangeAnimations = false
Java
recyclerView.getItemAnimator().setSupportsChangeAnimations(false)
يمكنك استبداله بما يلي:
Kotlin
val animator: SimpleItemAnimator? = recyclerView.itemAnimator as? SimpleItemAnimator animator?.supportsChangeAnimations = false
Java
ItemAnimator animator = recyclerView.getItemAnimator(); if (animator instanceof SimpleItemAnimator) { ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false); }
- تمت إضافة واجهة برمجة تطبيقات مُحسَّنة للصور المتحركة إلى فئة "
- التغييرات التي تم إجراؤها على الإصدار 7 الإصدار 14 مكتبة دعم الإعدادات المفضّلة الإصدار 17:
-
- تمت إزالة واجهات برمجة التطبيقات للتحكّم في مربّعات حوار
EditText.
- تمت إزالة واجهات برمجة التطبيقات للتحكّم في مربّعات حوار
- تغييرات مكتبة دعم الإصدار 17 من Leanback:
-
- تمت إضافة نسخة من الصف
GuidedStepFragmentإلى مكتبة الدعم. (لتوسيعandroid.support.v4.app.Fragment)، وتحسين الصور المتحركة الانتقالات. - تم تعديل الصف
GuidedStepFragmentليتم وضعه في أعلى. المحتوى الحالي. - تمت إضافة إمكانية إضافة تعليقات توضيحية إلى أنواع مختلفة من عمليات البحث المكتملة إلى
صف واحد (
SearchFragment). - تمت إضافة إمكانية نقل الشرائح المقسّمة إلى
VerticalGridFragment. الصف.
- تمت إضافة نسخة من الصف
- التغييرات في مكتبة دعم التصميم:
-
- تمت إضافة
إتاحة عدد الأحرف في التطبيق المصغّر
TextInputLayout. - تمت إضافة إمكانية محاذاة الحواف إلى الفئة
AppBarLayoutمن خلال إضافة السمة ثابتSCROLL_FLAG_SNAP. عند انتهاء التمرير، إذا كان العرض مرئيًا جزئيًا، يتم محاذاة العرض وتمريره إلى أقرب حافة له. - تم توفير إمكانية استخدام طرق العرض المخصّصة إلى فئة
NavigationViewباستخدام السمةapp:actionLayoutأوMenuItemCompat.setActionView().
- تمت إضافة
إتاحة عدد الأحرف في التطبيق المصغّر
- التغييرات التي طرأت على مكتبة دعم علامات التبويب المخصَّصة:
-
- تمت إضافة الطريقة
enableUrlBarHiding()إلىCustomTabsIntent. الصف. يتيح للعميل تخصيص ما إذا كان يجب إخفاء شريط عنوان URL تلقائيًا أو لا عند الانتقال للأسفل - تمت إضافة الطريقة
setActionButton()إلىCustomTabsSession. الصف. يتيح للعميل تغيير رمز زر الإجراء المخصص في علامة تبويب مخصصة تم إطلاقها بالفعل. - تمت إضافة الثابتَين
TAB_SHOWNوTAB_HIDDENكأحداث جديدة. لطريقةonNavigationEventمنCustomTabsCallbackالصف.
- تمت إضافة الطريقة
المراجعة 23.0.1
سبتمبر 2015
- تغييرات الإصدار 7 مكتبة دعم الإعدادات المفضّلة الإصدار 14:
-
- تمت إضافة ملفات تخطيط ونمط التصميم المتعدد الأبعاد. (المشكلة 183376)
- التغييرات التي طرأت على مكتبة تطبيقات v7 المتوافقة:
-
- تم إصلاح مشاكل الأعطال لفئة
Fragmentمن خلال تقييد استخدام طبقات الأجهزة إلى Android 4.1 (المستوى 16 من واجهة برمجة التطبيقات) والإصدارات الأحدث. (المشكلة 183896) - تم إصلاح مشكلة عدم عمل أزرار الأجهزة عندما تم ضبط نشاط
فئة واحدة (
Toolbar) لتكون بمثابةActionBarباستخدام الطريقةsetSupportActionBar(). (المشكلة 183334) - تم تعديل الصف
AppCompatDialogFragmentليصبح لم يعد يطرحWindows feature must be requested before adding contentخطأ. (المشكلة 183186)
- تم إصلاح مشاكل الأعطال لفئة
- التغييرات في مكتبة دعم التصميم:
-
- تم إصلاح
صف واحد (
AppBarLayout) وبالتالي يتم رسمه الآن بشكل صحيح بعد تدوير. (المشكلة 183109) - تم إصلاح
TabLayoutلذا فهي تعمل الآن بشكل صحيح عند ينقر المستخدم بعد التمرير السريع. (المشكلة 183123)
- تم إصلاح
صف واحد (
- التغييرات التي طرأت على مكتبة دعم علامات التبويب المخصَّصة:
-
- تم خفض
minSdkVersionمن 16 إلى 15 لدعم الإصدار. - تمت إضافة طريقة لإنشاء
CustomTabsSessionTokenمن هدف.
- تم خفض
المراجعة 23
أغسطس 2015
- مكتبات دعم جديدة تمت إضافتها:
للحصول على قائمة كاملة بالتغييرات في "مكتبة الدعم"، يُرجى الاطّلاع على الدعم تقرير الاختلافات في واجهة برمجة تطبيقات المكتبة
المراجعة 22.2.1
تموز (يوليو) 2015
- التغييرات في مكتبة دعم التصميم:
-
- تمت إضافة الطريقتَين
hide()وshow()إلى السمة فئة واحدة (FloatingActionButton) للإعلانات الآلية تؤدي إلى تشغيل الرسوم المتحركة. - تمت إضافة ثابت
LENGTH_INDEFINITEإلى السمة. صف واحد (Snackbar) لعرض شريط الإعلام المنبثق حتى يتم إغلاقه أو يتم عرض شريط إعلامي آخر. كما تمت إضافة العنصرsetActionTextColor(int)وsetActionTextColor(ColorStateList)الطرق. - تمت إضافة الطريقة
getSelectedTabPosition()إلى السمة فئةTabLayoutلاسترداد القيمة الحالية علامة التبويب المحددة. - تقديم واجهة برمجة تطبيقات بطلاقة
صف واحد (
android.support.v7.app.NotificationCompat.MediaStyle) للطريقة والسلسلة. - تمت إضافة طرق ملائمة إلى
RecyclerViewلإدراج العناصر بشكل مجمّع.
- تمت إضافة الطريقتَين
للحصول على قائمة كاملة بالتغييرات في "مكتبة الدعم"، يُرجى الاطّلاع على الدعم تقرير الاختلافات في واجهة برمجة تطبيقات المكتبة
المراجعة 22.2.0
أيار (مايو) 2015
- تمت إضافة مكتبة دعم التصميم:
-
- تمت إضافة
TextInputLayoutلعرض البيانات. نص تلميح وخطأEditTextكتصنيفات عائمة. - تمت إضافة
FloatingActionButtonلتنفيذ إجراءً أساسيًا على واجهتك زر إجراء عائم، متوافق مع أحجام تلقائية أو صغيرة. - تمت إضافة
Snackbarلتوفير تجربة استخدام خفيفة. ملاحظات مع إجراء اختياري في شريط إعلامي متحرك. - تمت إضافة
TabLayoutلتنفيذ الإصلاح قابل للتمرير علامات التبويب إلى جانب سهولة التكامل معViewPager - تمت إضافة
NavigationViewلتنفيذ العملية. لائحة التنقل بما في ذلك القدرة على تضخيم عناصر القائمة عبر مورد القائمة. - تمت إضافة
CoordinatorLayout، وهو غرض عام. التخطيط، يستخدم لإنشاء التبعيات بين المشاهدات التابعة والسماح بالتفاعلات السهلة بين العناصر من خلالCoordinatorLayout.Behaviorالعديد من التصميم تعتمد مكونات المكتبة على كونها عنصرًا ثانويًاCoordinatorLayout - تمت إضافة
AppBarLayout، وهي حاويةToolbarوطرق العرض الأخرى (مثلTabLayout) التفاعل مع الأحداث المتنقلة من خلال الانتقال خارج الشاشة إلى أن تصبح مرئية عند التفاعل إلى تمرير لأسفل، أو للطي/الانهيار قبل الانتقال إلى أسفل/إلى الشاشة. - تمت إضافة
CollapsingToolbarLayoutللتحكّم في العرض. كيفية انهيارToolbar. قد يتم تصغير شريط الأدوات حسب: تثبيت المكونات في أعلى الشاشة أثناء تصغيرها، وتقديم التمرير المتباين لمكوّنات مثلImageViewأو إضافة لون تظليل المحتوى عند تصغير العرض جزئيًا.
- تمت إضافة
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- تمت إضافة
getContentChangeTypes()أوsetContentChangeTypes()الطرق ونوع التغيير ذي الصلة الحقول إلىAccessibilityEventCompatفئة للتعامل مع أحداث إمكانية الوصول. - تمت إضافة
getActiveQueueItemId(),getCustomActions(), أوgetExtras()الطرق ذات حقول الحالة ذات الصلة صف واحد (PlaybackStateCompat) لمدة الحصول على الإجراءات المخصصة من قائمة الانتظار. - تمت إضافة
addCustomAction(),setActiveQueueItemId(), أوsetExtras()إلى صف واحد (PlaybackStateCompat.Builder) يمكن إضافته الإجراءات المخصصة إلى حالة التشغيل. - تمت إضافة
fromCustomAction()وgetCustomAction()طريقة إلى صف واحد (PlaybackStateCompat.CustomAction) للحصول على إجراءات مخصصة من قائمة الانتظار. - تمت إضافة
isAttachedToWindow()،offsetLeftAndRight()وoffsetTopAndBottom()إلى الفئةViewCompatللتعامل مع طرق العرض. - تمت إضافة
addOnPageChangeListener()،clearOnPageChangeListeners()وremoveOnPageChangeListener()طريقة للفئةViewPagerللاستجابة إلى الصفحة التغييرات.تم إيقاف طريقة
ViewPager.setOnPageChangeListener(). - تمت إضافة
طريقة واحدة (
notifySubtreeAccessibilityStateChanged()) من أجل الفئةViewParentCompatلإعلام أحد الوالدَين بالعرض تغيير حالة إمكانية الوصول لأحد العناصر التابعة له. - تمت إضافة
translationZ()،translationZBy(),z()،zBy()طرق للفئةViewPropertyAnimatorCompatوإضافة الرسوم المتحركة.
- تمت إضافة
- التغييرات التي طرأت على مكتبة تطبيقات v7 المتوافقة:
-
- تمت إضافة
onWindowStartingSupportActionMode()إلىAppCompatActivity,AppCompatCallback،AppCompatDialogفئات للتعامل مع أوضاع الإجراءات بدأ التنفيذ من النافذة الحالية. - تمت إضافة
isHandleNativeActionModesEnabled()وsetHandleNativeActionModesEnabled()إلى فئةAppCompatDelegateللتعامل مع أوضاع الإجراءات الأصلية.
- تمت إضافة
للحصول على قائمة كاملة بالتغييرات في "مكتبة الدعم"، يُرجى الاطّلاع على الدعم تقرير الاختلافات في واجهة برمجة تطبيقات المكتبة
المراجعة 22.1.0
نيسان (أبريل) 2015
- التغييرات التي طرأت على مكتبة التعليقات التوضيحية:
-
- تمت إضافة مكتبة التعليقات التوضيحية لتقديم الدعم لعمليات فحص الرموز البرمجية المحسّنة. وتتم إضافة التعليقات التوضيحية كعلامات بيانات وصفية ترفقها بالمتغيرات والمعلمات وإرجاع القيم لفحص القيم التي تعرض طريقة العرض والمعلمات التي تم تمريرها والقيم المحلية المتغيرات والحقول.
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- تمت إضافة الفئة
ColorUtils. لتوفير مجموعة من طرق المنفعة المتعلقة بالألوان. - تمت إضافة
unwrap()wrap()طريقة إلى الصفDrawableCompat، مما يسمح لك باستخدامsetTint(),setTintList(), وsetTintMode()على كل الأجهزة من المستوى 4 أو أعلى لواجهة برمجة التطبيقات. - تمت إضافة الفئة
TraceCompatإلى كتابة أحداث التتبع إلى المخزن المؤقت لتعقب النظام، والذي يمكن جمعه بعد ذلك باستخدام أداة Systrace. - تمت إضافة الفئة
CircularIntArray. لإنشاء هياكل دائرية لبيانات صفيفة أعداد صحيحة. - تمت إضافة
clear()،removeFromStart(), وremoveFromEnd()إلى الفئةCircularArray. تم أيضًا تغيير والطرق الحالية في هذه الفئة غير نهائية. - تمت إضافة
InputDeviceCompatكفئة مساعدة للوصول إلى البيانات في صف واحد (InputDeviceCompat). - تمت إضافة
LayoutInflaterCompatكفئة مساعد للوصول إلى البيانات في صف واحد (LayoutInflaterCompat) وإضافة واجهةLayoutInflaterFactory. - تمت إضافة فئات وأساليب وواجهات لدعم التمرير المتداخل.
- تمت إضافة
NestedScrollingChildHelperوNestedScrollingParentHelperفئات مساعدة لتنفيذ طرق عرض الأصل المتنقل المتداخلة والفرعية. - تمت إضافة
NestedScrollingChildيجب تنفيذها بواسطةViewفئة فرعية. - تمت إضافة
NestedScrollingParentوScrollingViewمن الواجهات المتوفرة عمليات التمرير وتوفير واجهات برمجة التطبيقات المتعلقة بالتمرير. - تمت إضافة
طريقة
getNestedScrollAxes()للوصول إلىViewGroupCompatالصف. - تمت إضافة طرق إلى الفئة
ViewParentCompatإلى التمرير المتداخل. - تمت إضافة
NestedScrollViewلدعم العنصر الرئيسي وعنصر فرعي التمرير المتداخل في كل من الإصدارين الجديد والقديم من Android
- تمت إضافة
- تمت إضافة الطرق والثوابت إلى
MotionEventCompat. الفئة للحصول على قيم المحور ومصدر الحدث. - تم تعديل "
AccessibilityNodeInfoCompat". لإضافة طرق للأخطاء وإبطال المحتوى والتصنيفات. - تمت إضافة فئات الاستيفاء التالية للصور المتحركة:
FastOutLinearInInterpolator,FastOutSlowInInterpolator,LinearOutSlowInInterpolator,LinearOutSlowInInterpolator،PathInterpolatorCompat - تمت إضافة الفئة
Spaceلتوفير فجوات بين والمكونات في تخطيطات الأغراض العامة. تم إيقاف هذه الفئة نهائيًا في مكتبة تخطيط الشبكة. - تمت إضافة الفئة
TextViewCompatللوصول إلى المحتوى. الميزات فيTextView. - تمت إضافة معلَمة الإزاحة إلى
طريقة "
onPull()" في صف واحد (EdgeEffectCompat).
- تمت إضافة الفئة
- التغييرات التي طرأت على مكتبة تطبيقات v7 المتوافقة:
-
- تمت إضافة إمكانية تعديل الألوان إلى التطبيقات المصغّرة المتوافقة مع التطبيق، بما في ذلك
AppCompatAutoCompleteTextView,AppCompatButton,AppCompatCheckBox,AppCompatCheckedTextView,AppCompatEditText,AppCompatMultiAutoCompleteTextView,AppCompatRadioButton,AppCompatRatingBar,AppCompatSpinner، وAppCompatTextView. - تم تعديل "
AppCompatActivity" كقاعدة. للأنشطة التي تستخدم ميزات شريط إجراءات مكتبة الدعم. هذا الصف يحل محلActionBarActivityالمتوقّفة نهائيًا. - تمت إضافة
واجهة "
AppCompatCallback" ليتم تنفيذها لـ AppCompat حتى تتمكن من إجراء استدعاءات. - تمت إضافة
صف واحد (
AppCompatDelegate) تجريدي بصفتك مفوَّضًا، يمكنك الاستعانة بملحق AppCompat ليشمل أي نشاط. - تمت إضافة
صف واحد (
AppCompatDialog) كفئة أساسية لمربعات الحوار ذات المظاهر AppCompat. - تمت إضافة نمط مؤشر سريان العمل.
AlertDialogو صفان (AlertDialog.Builder) لتوفير AppCompat الذي يحمل طابعًاAlertDialog. - تمت إضافة الفئة
Palette.Builder. لإنشاء مثيلين (Palette)- تمت إضافة
from(Bitmap)إلى الفئةPaletteوبدء إنشاء لوحة ألوان باستخدام مثالPalette.Builder - تم إيقاف
Palette.generate()وPalette.generateAsync()طريقة
- تمت إضافة
- تمت إضافة
طريقة
getAbsoluteAlignment()للوصول إلىGridLayout.Specالصف. - تم التوقّف عن استخدام
app:themeفي التصميم.Toolbarيمكنك الآن استخدامandroid:themeلأشرطة الأدوات على جميع الأجهزة من المستوى 7 لواجهة برمجة التطبيقات والمستويات الأعلى يتوافقandroid:themeمع جميع التطبيقات المصغّرة على الأجهزة من المستوى 11 والإصدارات الأحدث.
- تمت إضافة إمكانية تعديل الألوان إلى التطبيقات المصغّرة المتوافقة مع التطبيق، بما في ذلك
- التغييرات التي تم إجراؤها على الإصدار 17 من مكتبة leanback:
-
- تمت إضافة
GuidedStepFragment،GuidanceStylistوGuidedActionsStylistللدعم إنشاء تدفقات قرار متعددة الخطوات.
- تمت إضافة
- تغييرات مكتبة إعادة التدوير الإصدار 7:
-
- تمت إضافة
SortedListصف لعرض العناصر فيها. ترتيب القائمة وتقديم إشعار بالتغييرات التي تطرأ على القائمة. - تمت إضافة الفئة
SortedListAdapterCallback. يمكنه ربط قائمة تم فرزها صف واحد (RecyclerView.Adapter).
- تمت إضافة
- التغييرات التي طرأت على مكتبة JavaScript v8:
-
- تمت إضافة الفئة
ScriptIntrinsicHistogramللنطاق استخدامه كعامل تصفية تكراري. - تمت إضافة الفئة
ScriptIntrinsicResizeللنطاق إجراء تغيير حجم تخصيص ثنائي الأبعاد.
- تمت إضافة الفئة
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- تم تعديل طريقة
getDrawable()لعرض عنصر قابل للرسم لمعرّف مورد محدّد. وكثافة الشاشة والمظهر. - تمت إضافة الطريقة
setImportantForAccessibility()للإشارة إلى ما إذا كان يجب تشغيل طريقة العرض أحداث إمكانية الوصول. - تمت إضافة الطريقة
getStatusBarBackgroundDrawable()لتتمكّن من الحصول على خلفية شريط الحالة. القابل للرسم. - تمت إضافة طرق إلى
NotificationCompat.CarExtender.UnreadConversationحتى تتمكن تطبيقات المراسلة في Android Auto من استرداد بيانات الإشعارات الإضافية. - تمت إضافة الطريقة
getProgressCircleDiameter()لعرض قُطر تصميم الدائرة. - تم تغيير
DrawerLayoutالتلقائي. لون شريط الحالة إلىcolorPrimaryDark.
- تم تعديل طريقة
- التغييرات التي طرأت على مكتبة تطبيقات v7 المتوافقة:
-
- تمت إضافة نمط مؤشر سريان العمل.
Base_Widget_AppCompat_Spinner_Underlined - تمت إضافة أنماط تطبيقات مصغّرة ملوَّنة باستخدام
Widget_AppCompat_AutoCompleteTextView,MultiAutoCompleteTextView,TextAppearance_AppCompat_Button،Base_Widget_AppCompat_RatingBar
- تمت إضافة نمط مؤشر سريان العمل.
- التغييرات التي تم إجراؤها على الإصدار 17 من مكتبة leanback:
-
- تمت إضافة
getRecycledPoolSize()setRecycledPoolSize()طريقة للسماح بأحجام مخصّصة لأحواض السباحة المُعاد تدويرها - تمت إضافة السمة
WRAP_CONTENTإلى العنصر إعداد عرض التصميم لدعم المحتوى الملفوف لرموز العناوين. - تم تحديد
R.transitionفي XML إلى لتحسين تحديثات النقل. - تم تفعيل دعم التنسيقات من اليمين إلى اليسار.
- تمت إضافة إمكانية تشغيل الأحداث الرئيسية للوسائط وإيقافها مؤقتًا إلى
صف واحد (
PlaybackOverlayFragment). - تمت إضافة انتقالات الإدخال والرجوع إلى
BrowseFragmentالصف و صف واحد (DetailsFragment). - تمت إضافة الطريقة
replace()لاستبدال العناصر في مصفوفة محوّل العناصر.
- تمت إضافة
- التغييرات التي طرأت على مكتبة Mediarouter v7:
-
- تم تحديث رموز Google Cast لاستخدام التصميم المتعدد الأبعاد.
- تم تعديل جميع الرموز المستخدمة في مربّعات الحوار
MediaRouterلاستخدام التصميم المتعدد الأبعاد.
- تغييرات مكتبة إعادة التدوير الإصدار 7:
-
- تمت إضافة
getlayoutPosition()وgetadapterPosition()طريقة للوصول إلىRecyclerViewالصف. - تم إيقاف
classgetChildPosition()وfindViewHolderForPosition()طريقة في صف واحد (RecyclerView). - تم إيقاف الطريقة
getPosition()في صف واحد (RecyclerView.ViewHolder). - تم إيقاف الطريقة
getViewPosition()في صف واحد (RecyclerView.LayoutParams).
- تمت إضافة
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- تمت إضافة عدة عناصر
NotificationCompat.WearableExtenderطرق لتحسين عرض الرموز الشريطية في الإشعارات على الأجهزة القابلة للارتداء.
- تمت إضافة عدة عناصر
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- تاريخ الإضافة:
NotificationCompat.CarExtenderلإتاحة إضافات Android Auto بالإشعارات.
- تاريخ الإضافة:
- التغييرات التي طرأت على مكتبة تطبيقات v7 المتوافقة:
-
- تمت إضافة الدالة الإنشائية
PopupMenuلدعم النافذة المنبثقة الجديدة. القوائم. - تمت إضافة معلومات عن وصف رمز التصغير في
Toolbar. الصف. - تم تعديل التطبيق المصغّر "
SearchView" لإتاحة عرضcommitIcon. - تمت إزالة السمة
buttonGravityمن صف واحد (Toolbar).
- تمت إضافة الدالة الإنشائية
- التغييرات التي طرأت على مكتبة مشاهدات البطاقات الإصدار 7:
-
- تمت إضافة واجهة برمجة التطبيقات
setCardBackgroundColor(ColorStateList)إلى يتيح تغيير لون خلفيةCardView. - تم تغيير
CardViewللإبلاغ بدقة أكبر عن قيمة التعتيم كـTRANSLUCENT.
- تمت إضافة واجهة برمجة التطبيقات
- تغييرات في إعادة التدوير للإصدار 7 المكتبة:
-
- تمت إضافة
TOUCH_SLOP_DEFAULTوTOUCH_SLOP_PAGINGثوابت إلى الفئةRecyclerViewلدعم تكوينات شريط اللمس للتنقّل بين الصفحات.
- تمت إضافة
- التغييرات التي تم إجراؤها على الإصدار 17 من مكتبة leanback:
-
- تم توفير إمكانية إنشاء أجزاء من رموز الإصدار 4.
- تم تغيير لون النص الثانوي في "
CardView".
- تمت الإضافة مكتبة دعم Multidex ملفات Dalvik القابلة للتنفيذ (DEX) لدعم الملفات المتعدّدة الأذونات قبل الإصدار Android 5.0.
- التغييرات التي طرأت على مكتبة دعم الإصدار 4:
-
- إضافة دعم لـ
Fragmentالانتقالات للأجهزة التي تعمل بنظام التشغيل Android 5.0 (مستوى واجهة برمجة التطبيقات 21). يُرجى العلم بأنّ عمليات النقل ليس لها أي تأثير على الأجهزة التي تعمل. Android 4.4 والإصدارات الأقدم - تمت إضافة
DocumentFileلتسهيل الاستخدام. عملية الانتقال منFileأثناء العمل على أشجار التوثيق. ومع ذلك، تتطلب هذه الفئة المزيد من النفقات العامة للمعالجة مقارنةً بمنصة تمت إضافة واجهة برمجة تطبيقاتDocumentsContractفي Android 4.4 (المستوى 19) لذلك، يجب عليك التبديل إلى استخدامDocumentsContractعند التشغيل على Android 4.4 وأعلى.
- إضافة دعم لـ
- تغييرات v7 appcompat المكتبة:
-
- تمت إضافة دعم لـ material (المادّة) تصميم واجهات المستخدم.
- تمت إضافة
Toolbar، بشكل عام. وظائفActionBarاستخدامها ضمن تخطيطات التطبيق. - تاريخ التعديل:
ActionBarDrawerToggleالذي يحتوي على الرسوم المتحركة من القائمة إلى السهم - تعديل التطبيقات المصغّرة لواجهة المستخدم الشائعة لإتاحة التلوين من خلال المظهر السمات عند تشغيلها على أجهزة تعمل بإصدار أقدم من Android 5.0
- تمت إضافة
SwitchCompat، منفذ خلفي التطبيق المصغّر "Switch" الذي تمت إضافته في Android 4.0 (المستوى 14)
- مكتبة بطاقات في الإصدار 7 الجديدة:
-
- تمّت إضافة التطبيق المصغّر "
CardView" تنفيذًا متوافقًا مع التصميم المتعدد الأبعاد لعرض عناصر البيانات.
- تمّت إضافة التطبيق المصغّر "
- إعادة التدوير الإصدار 7 الجديد المكتبة:
-
- تمّت إضافة التطبيق المصغّر "
RecyclerView" والتي تقدّم عرض قائمة مرنة لتوفير فترة محدودة إلى مجموعة بيانات كبيرة.
- تمّت إضافة التطبيق المصغّر "
- مكتبة لوحات الإصدار 7 الجديدة:
-
- تمت إضافة صف واحد (
Palette)، التي تتيح لك استخراج الألوان البارزة من صورة
- تمت إضافة صف واحد (
- مكتبة الإصدار 17 من leanback الجديدة:
-
- إضافة دعم لإنشاء واجهات المستخدم للتلفزيون، بما في ذلك
BrowseFragment,DetailsFragmentوPlaybackOverlayFragmentلمزيد من المعلومات عن استخدام أدوات واجهة المستخدم هذه، راجع إنشاء أجهزة التلفزيون تطبيقات التشغيل:
- إضافة دعم لإنشاء واجهات المستخدم للتلفزيون، بما في ذلك
- التغييرات لمكتبة دعم الإصدار 4:
-
- تمت إضافة دعم الإشعارات الممتد لنظام Android Wear في
NotificationCompat.WearableExtender، ما يسمح لك لتحديد الميزات الخاصة بالأجهزة القابلة للارتداء في الإشعارات. - تمت إضافة
NotificationCompat.Action.WearableExtender، الذي يسمح بإضافة إجراءات إلى إشعارات الأجهزة القابلة للارتداء. - تمت إضافة
NotificationManagerCompat، ما يتيح لك لإصدار إشعارات تتوافق مع ميزات الأجهزة القابلة للارتداء بشكل صحيح. - تمت إضافة
RemoteInput، ما يسمح بحمل جهاز محمول باليد. لتلقي الإدخال الصوتي من إشعار يظهر على جهاز قابل للارتداء. - تم تحسين التعامل مع الملاحظات والآراء باللمس في
SwipeRefreshLayout
- تمت إضافة دعم الإشعارات الممتد لنظام Android Wear في
- التغييرات لمكتبة دعم الإصدار 4:
-
- تمت إضافة الفئة
SwipeRefreshLayout، والذي يمكّن المستخدمين من تحديث محتوى طريقة العرض باستخدام إيماءة التمرير السريع. - تم إصلاح مشكلات إمكانية الوصول المتعلقة بأدراج التنقل.
- تمت إضافة الفئة
- التغييرات لمكتبة التطبيقات المتوافقة مع الإصدار 7:
-
- تم إصلاح مشاكل الخلفية في شريط الإجراءات.
- التغييرات لمكتبة دعم الإصدار 4:
-
- تم تحسين
PrintHelperعن طريق إضافة القيم غير المتزامنة مناولة الطباعة. - تم إصلاح تقريب فئة
DrawerLayoutaddChildrenForAccessibility(). - تم إصلاح النسخ المطابق القابل للرسم على الشريحة في
ActionBarDrawerToggle. - تم إصلاح مشكلة فردية عند إزالة عنصر من مكرّر مجموعة.
- تم تحسين
- تغييرات لمكتبة Mediarouter الإصدار 7:
-
- تم تحسين عملية تحديد المسار باستخدام اسم المكوِّن الكامل في
MediaRouteProvider.ProviderMetadata. - تم تعديل إعدادات "
MediaRouteChooserDialog" لإخفاء الخيار غير مفعَّل. والمسارات.
- تم تحسين عملية تحديد المسار باستخدام اسم المكوِّن الكامل في
- التغييرات في مكتبة النصوص البرمجية الخاصة بالإصدار v8
-
- تمت إضافة عملية نشر الخطأ لطبقة التصويب في RenderScript.
- التغييرات لمكتبة دعم الإصدار 4:
-
- تمت إضافة إمكانية استخدام واجهات برمجة تطبيقات التخزين الخارجية مع
getObbDirs(),getExternalFilesDirs(),getExternalCacheDirs(), وgetStorageState(). تعرض هذه الطرق المساعدة دائمًا كائن ملف واحد على الأجهزة التي تعمل بنظام Android 4.3 (المستوى 18 من واجهة برمجة التطبيقات) والإصدارات الأقدم وعند استخدامها على Android 4.4 (المستوى 19 من واجهة برمجة التطبيقات) والإصدارات الأحدث، قد تُرجع هذه الطرق أكثر من كائن ملف واحد. - تمت إضافة الفئة
PrintHelperالتي تعمل مع. واجهات برمجة تطبيقات الطباعة لطباعة الصور باستخدام حد أدنى من الرموز البرمجية - تمت إضافة دعم واجهة مستخدم السحب للفتح للقوائم المنبثقة. لمزيد من المعلومات، يُرجى مراجعة
PopupMenuCompatوListPopupWindowCompat - تم تحسين دعم إمكانية الوصول مع إضافة
طريقة "
findFocus()" فيAccessibilityNodeProviderCompatو طريقة الدفعgetLiveRegion()فيAccessibilityNodeInfoCompat - تمت إضافة فئة المساعد
ScaleGestureDetectorCompatللحساب الوصول إلى طرق إيماءة التوسيع الجديدة. - تم حل مشكلة "
ActionBarDrawerToggle" في اللغات من اليمين إلى اليسار. - تم تعديل خيار
AutoScrollHelperللاستهلاك. لمس الأحداث أو السماح بتمريرها إلى طرق عرض أخرى.
- تمت إضافة إمكانية استخدام واجهات برمجة تطبيقات التخزين الخارجية مع
- تغييرات لمكتبة Mediarouter الإصدار 7:
-
- تم توفير إمكانية إضافة الوسائط إلى قائمة انتظار التشغيل، مع ضبط قيم عناوين HTTP والوسائط. مدة التشغيل.
- تمت إضافة إجراءات صريحة لبدء الجلسة والحصول عليها وإنهائها لإدارة الوسائط بشكل صريح جلسات التشغيل باستخدام موجه الوسائط.
- التغييرات لمكتبة دعم الإصدار 4:
-
- واجهة المستخدم
- تمت إضافة
BidiFormatterللتعامل مع العنصر. سلاسل نصية تجمع بين نص من اليمين إلى اليسار ومن اليسار إلى اليمين. - تم تعديل
ViewPagerللتعامل بشكل أفضل مع الحالات التي يبلغ عرض جهاز النداء صفر في مرحلة معالجة التصميم الأولية. - تاريخ التعديل ووقته:
DrawerLayoutSlidingPaneLayoutلعدم طرح استثناءات القياس أثناء تعديل رمز المشروع.
- تمت إضافة
- مزايا مناسبة لذوي الاحتياجات الخاصة
- تمت إضافة
ExploreByTouchHelperلتبسيط تنفيذ إمكانية الوصول لطرق العرض المخصصة. - تم إصلاح مشكلة في "
ViewPager" بشكل غير صحيح جارٍ تعبئةTYPE_VIEW_SCROLLEDحدث لإمكانية الوصول. - تم إصلاح استثناء مؤشر فارغ في
ViewPagerعند تعبئة حدث إمكانية وصول. AccessibilityNodeInfoCompatالمبسطة من خلال تغيير إدخالاتCharSequenceإلى عناصرString.- تم إيقاف
AccessibilityRecordCompatالدالة الإنشائية التي استخدمتObjectكإدخال.
- تمت إضافة
- الوسائط
- تمت إضافة صف مساعد واحد (
TransportMediator) لإدارته. التحكم في نقل الوسائط، مثل التشغيل والإيقاف المؤقت والتخطي وغير ذلك من إجراءات الوسائط. - تمت إضافة "
DisplayManagerCompat" لأغراض الإدارة. على شاشة جهاز واحدة أو أكثر
- تمت إضافة صف مساعد واحد (
- التغييرات الأخرى
- تمت إضافة فئة مساعد واحدة (
WakefulBroadcastReceiver) للحساب تنفيذ نمط شائع لرصد حدث تنشيط الجهاز وإتمام العمل إلىServiceمع التأكد من عدم رجوع الجهاز إلى قبل اكتمال التسليم. - تمت إضافة اثنين من واجهات برمجة التطبيقات الجديدة،
commitContentChanged()وrollbackContentChanged()، إلىAsyncTaskLoaderإلى المساعدة في التعامل مع تحديثات الخلفية لتغييرات البيانات التي يتم إلغاؤها في وقت لاحق.
- تمت إضافة فئة مساعد واحدة (
- واجهة المستخدم
- مكتبة تطبيقات الإصدار 7 الجديدة:
- مكتبة Mediarouter الإصدار 7 الجديدة:
-
تمت إضافة مكتبة جهاز توجيه وسائط جديدة تتوافق مع معاينة مطوِّر برامج Google Cast. توفر واجهات برمجة التطبيقات لمكتبة Mediarouter الإصدار v7 وسيلة للتحكم في توجيه وقنوات الوسائط وعمليات البث من الجهاز الحالي إلى الشاشات الخارجية ومكبرات الصوت وأجهزة الوجهة الأخرى، مع مراعاة التوافق مرة أخرى مع Android 2.1. (المستوى 7 من واجهة برمجة التطبيقات) راجع V7 Mediarouter للحصول على مزيد من المعلومات.
واجهات برمجة التطبيقات التابعة لمكتبة Mediarouter الإصدار 7 التي تم تقديمها في خدمة الدعم تخضع الإصدار r18 للمكتبة للتغيير في المراجعات اللاحقة من فريق الدعم المكتبة. في الوقت الحالي، ننصح باستخدام المكتبة في ما يتعلّق فقط باستخدام Google Cast معاينة مطوّر البرامج.
- التغييرات لمكتبة دعم الإصدار 4:
-
- تمت إضافة "
DrawerLayout" لإنشاء التنقل الدرج الذي يمكن سحبه من حافة النافذة. - تمت إضافة التطبيق المصغّر "
SlidingPaneLayout" لإنشاء الروابط طرق عرض الملخص والتفاصيل التي تتكيّف بشكل مناسب مع أحجام الشاشات المختلفة. - تمت إضافة "
ActionBarDrawerToggle" كطريقة ربط دالاتDrawerLayoutوActionBarمعًا. - تمت إضافة
ViewDragHelperكمكوِّن مشترك جديد. لسحب طرق العرض في طريقة العرض الأصلية. - تمت إضافة
ScrollerCompatلتوفير التوافق معScrollerوOverScroller. - تمت إضافة
FileProviderللسماح بمشاركة الصور الخاصة. الملفات بين التطبيقات. - تم تعديل السمة
ViewPagerلطرح استثناء إذا كانت يتم تعديل فئةPagerAdapterالمرتبطة بدون مكالمة لـnotifyDataSetChanged(). - تم إصلاح مشكلة كانت تظهر بترتيب رسم واحد (
ViewPager) طفل طلبك. - تم إصلاح
GestureDetectorCompatللإرسال غير متوفر.onSingleTapConfirmed(MotionEvent)مكالمة بين مهلة النقر وأحداث الضغط المطوّل.
- تمت إضافة "
- مكتبة تنسيق الشبكة الإصدار 7 الجديدة:
-
- تمت إضافة
GridLayoutلتقديم الدعم لـ كائن التنسيقGridLayout. - تمت إضافة
android.support.v7.widget.Space، والذي يمكن استخدامه لإنشاء مناطق فارغة. داخل كائن تنسيقGridLayout.
- تمت إضافة
- التغييرات لمكتبة دعم الإصدار 4:
-
- تم تحسين سلوك التفاعل في
ViewPager. - تم إصلاح الخطأ الذي قد يدفع "
ViewPager" إلى اختيار صفحة خاطئة. - استخدام ثابت لطريقة
removeView()أثناء تنسيقViewPager. - تم إصلاح المشكلة في "
SearchViewCompat" أثناء استخدام زر الرجوع للإغلاق لا يؤدي إلى محو نص البحث. لا ينطبق هذا الإصلاح إلا على المضيف للمستويات 14 والأعلى من واجهة برمجة التطبيقات.
- تم تحسين سلوك التفاعل في
- التغييرات لمكتبة دعم الإصدار 4:
-
- واجهة المستخدم
- تمت إضافة الدعم لفئات
Fragmentالمدمجة. - تمت إضافة تحسينات إلى تصحيح أخطاء
FragmentManager. - تم إصلاح مشكلة في
FragmentTabHostحيث تم إصلاح الجزء قد يؤدي التفاعل مع علامة التبويب إلى فقدان حالةListView. - تم حل المشكلة المتعلقة بالتلميح المرئي للمستخدم في
FragmentStatePagerAdapter - تاريخ الإضافة:
PageTransformerإلىViewPagerللسماح للتطبيقات توفر سلوك انتقال مخصص للتمرير. - تمت إضافة ميزات وإصلاحات جديدة إلى
TaskStackBuilder. من الإصدار الحالي. - تم إصلاح
PagerTitleStripلتتبُّع يتم حاليًا استخدامPagerAdapter. - تم إصلاح مشاكل وميض الشاشة وتحديد الموضع واقتصاص النص باستخدام
PagerTitleStrip - تم إصلاح
PagerTabStripليتوافق مع المساحة المتروكة بشكل صحيح عند رسم تسطير.
- تمت إضافة الدعم لفئات
- مزايا مناسبة لذوي الاحتياجات الخاصة
- تمت إضافة دعم لأنواع أحداث اللمس والإيماءات الجديدة لتسهيل الاستخدام في
AccessibilityEventCompat - تم توفير استخدام واجهات برمجة التطبيقات الجديدة لتسهيل الاستخدام في
ViewCompat - تمت إضافة إمكانية استخدام طريقة
performAccessibilityAction()إلىViewCompat.
- تمت إضافة دعم لأنواع أحداث اللمس والإيماءات الجديدة لتسهيل الاستخدام في
- تمت إضافة إمكانية استخدام الإيماءات من خلال "
GestureDetectorCompat". - تم توفير إمكانية إجراء عمليات على الملفات باستخدام حزمة
صف واحد (
AtomicFile). - تمت إضافة إمكانية استخدام المجموعة الكاملة من
makeطرق فيIntentCompat - تمت إضافة طريقة
trimToSize()في فئة خدمات استهلاكية واحدة (LruCache). - تم تعديل
ConnectivityManagerCompatللحصول على NetworkInfo. منCONNECTIVITY_ACTIONالبث.
- واجهة المستخدم
- التغييرات لمكتبة دعم الإصدار 4:
-
- دعم إضافي لميزات الإشعارات التي تم تقديمها في الإصدار 4.1 من نظام التشغيل Android (المستوى 16 من واجهة برمجة التطبيقات) مع
الإضافات إلى
NotificationCompat.
- دعم إضافي لميزات الإشعارات التي تم تقديمها في الإصدار 4.1 من نظام التشغيل Android (المستوى 16 من واجهة برمجة التطبيقات) مع
الإضافات إلى
- التغييرات لمكتبة دعم الإصدار 4:
-
- دعم واجهة المستخدم
- تمت إضافة دعم
PagerTabStrip، ما يوفر وظائف أخرى تتجاوزPagerTitleStrip. - تم إصلاح أخطاء مختلفة في
PagerTitleStripPagerTabStrip، بما في ذلك خيارsetAllCapsومحاذاة العنوان تحسينات في المظهر وقيود العرض الأدنى ومشكلات التنقل باللمس. - تمت إضافة دعم هوامش التوثيق للصفحات في
ViewPager، والتي تساعد الفئةViewPagerفي توفير دعم الانتقال للصفحات التي تحتوي على نطاق تمرير أفقي كبير، مثل خريطة. - تم إصلاح العديد من الأخطاء في
ViewPager، بما في ذلك الحجم. ومشكلات تغيير مجموعة البيانات وتحديد موضع الصفحة وتفاعل المستخدم وتتبع التمرير ولوحة المفاتيح مشكلات التنقل. - تم إصلاح العديد من الأخطاء في
Fragment، بما فيها أخطاء الخطأ التعامل معonActivityResult()عند لم يعد الجزء المستهدف موجودًا، وإرسال أحداث التحديد إلى أجزاء غير مرئية، وتحسين سلوكFragmentTransaction.replace()وإضافة معالجة أفضل لحالة الأجزاء التي يتم نقلها إلى مكان آخر. - تمت إضافة إمكانية استخدام طريقة
postOnAnimation()فيViewCompat. - تم تحديث "
NavUtils" لاستخدام الإصدار 4.1 من نظام التشغيل Android (المستوى 16 من واجهة برمجة التطبيقات). وظائف التنقّل لأعلى عند توفّرها.
- تمت إضافة دعم
- مزايا مناسبة لذوي الاحتياجات الخاصة
- تم تحديث فئات دعم تسهيل الاستخدام، بما في ذلك
AccessibilityNodeInfoCompat، لمتابعة الإصلاحات التي تم إجراؤها في Android. 4.1 (المستوى 16 من واجهة برمجة التطبيقات). - تمت إضافة الدعم لإجراءات التمرير لتسهيل الاستخدام في
ViewPager.
- تم تحديث فئات دعم تسهيل الاستخدام، بما في ذلك
- تحسينات عامة
- تم تعديل
TaskStackBuilderليعكس التغييرات في واجهة برمجة التطبيقات في Android 4.1 (المستوى 16) - تم تحسين "
TaskStackBuilder" للسماح باستخدامها من إحدى الخدمات. - إضافة دعم لـ
EXTRA_HTML_TEXTإلىShareCompat. - تم تعديل
NotificationCompat.Builderلإتاحة استخدام طريقةsetNumber(). - تمت إضافة معلومات الدعم في
ConnectivityManagerCompatطريقةisActiveNetworkMetered().
- تم تعديل
- دعم واجهة المستخدم
- التغييرات لمكتبة دعم الإصدار 4:
-
- تم إنشاء علامات بأهداف ثابتة لـ
PendingIntentعناصر بواسطةTaskStackBuilder - تمت إزالة السمات غير المستخدَمة من مشاريع مكتبة تنسيق الشبكة للتأكّد من يمكن إنشاء المكتبة باستخدام مستوى واجهة برمجة التطبيقات 7 والأعلى.
- تمت إضافة
.classpathو.projectملف لتنسيق الشبكة. مشروع المكتبة.
- تم إنشاء علامات بأهداف ثابتة لـ
- التغييرات لمكتبة دعم الإصدار 4:
-
- تمت إضافة
ShareCompat، وهي توفّر صفوف مساعدة. لإرسال المحتوى واستقباله عبر تطبيقات المشاركة على شبكات التواصل الاجتماعي، بما في ذلك البيانات الوصفية الجديدة إحالة البيانات المشتركة إلى التطبيق المصدر. توفّر هذه الفئة أيضًا تكاملاً متوافقًا مع الجديدShareActionProviderفي الإصدار Android 4.0. - تمت إضافة
NavUtilsوTaskStackBuilderلتوفير الدعم لتنفيذ إرشادات تصميم Android للتنقل. هذه وتتضمن الإضافات طريقة لتنفيذ الزر لأعلى في شريط الإجراءات عبر الإصدارات. للحصول على مثال لتنفيذ هذا النمط، اطلع على نموذج App Navigation في (<em><sdk></em>/samples/<em><platform></em>/AppNavigation). - تمت إضافة
NotificationCompat.Builderلتوفير تنفيذ التوافق لفئة مساعدNotification.Builderفي Android 3.0 لإنشاء إشعارات نظام موحدة.
- تمت إضافة
- التغييرات لمكتبة دعم الإصدار 4:
-
- التغييرات التي تم إجراؤها على ViewPager:
- تم توفير المزيد من طُرق العرض الزخرفية لـ "
ViewPager". قد يتم تقديم طرق العرض الزخرفية كطرق عرض فرعية لجهاز نداء بتنسيق XML. - تمت إضافة
PagerAdapter.getPageTitle()لتوفير سلاسل العناوين للصفحات، والتي يتم ضبطها تلقائيًا على "لا". عنوان كل صفحة. - تمت إضافة
PagerTitleStrip، وهو عنوان غير تفاعلي الذي يمكن إضافته كعنصر فرعي لـ ViewPager. يمكن للمطوّرين إرسال نصوص المظهر واللون، بالإضافة إلى معلومات حجم التخطيط والجاذبية. - تم تعديل
PagerAdapterطريقة لاستخدام ViewGroup. بدلاً من "عرض" لتجنُّب بث الفئة في عمليات تنفيذ المهايئات. - تم تحديث
ViewPagerلاستخدام نمط مشغّل التطبيقات أسلوب الانتقال السريع. - إصلاح الأخطاء المتعلّقة بتفاعل واجهة المستخدم وأتمتة الاختبار
- تم توفير المزيد من طُرق العرض الزخرفية لـ "
- دعم للأجزاء:
- تم تغيير طريقة
setStartDeferred()إلىsetUserVisibleHint(boolean). - تمت إضافة وقت بدء مؤجَّل للصفحات التي لا تظهر على الشاشة من أجل تحسين الأداء.
- تم تغيير طريقة
- دعم واجهات برمجة التطبيقات Accessibility API:
- تم تعديل
AccessibilityDelegateCompatطريقة. لعرض قوائم فارغة بدلاً من خالية. - تمت إضافة واجهات برمجة تطبيقات جديدة تحتاجها نماذج v4.
- تم تعديل
- التغييرات التي تم إجراؤها على ViewPager:
- التغييرات لمكتبة دعم الإصدار 4:
-
- دعم واجهات برمجة التطبيقات Accessibility API:
- تاريخ الإضافة:
AccessibilityDelegateCompatلإتاحةView.AccessibilityDelegate - تاريخ الإضافة:
AccessibilityEventCompatلإتاحةAccessibilityEvent - تاريخ الإضافة:
AccessibilityManagerCompatلإتاحةAccessibilityManager - تاريخ الإضافة:
AccessibilityNodeInfoCompatلإتاحةAccessibilityNodeInfo - تاريخ الإضافة:
AccessibilityRecordCompatلإتاحةAccessibilityRecord - تاريخ الإضافة:
AccessibilityServiceInfoCompatلإتاحةAccessibilityServiceInfo - تاريخ الإضافة:
ViewGroupCompatلإتاحة ميزات تسهيل الاستخدام فيViewGroup. - تم التعديل في
ViewCompatلإتاحة ميزات تسهيل الاستخدام فيView.
- تاريخ الإضافة:
- التغييرات التي تم إجراؤها على ViewPager:
- تمت إضافة دعم الهوامش بين الصفحات.
يمكن توفير سمة
Drawableاختيارية. لملء الهوامش. - تمت إضافة دعم لـ
EdgeEffect. - تمت إضافة إمكانية التنقّل باستخدام لوحة المفاتيح.
- تمت إضافة الدعم للتحكم في عدد الصفحات التي يتم الاحتفاظ بها على أي من الجانبين. من الصفحة الحالية.
- تحسين فيزياء اللمس.
- إصلاح الأخطاء في سلوك واجهة المستخدم
- تمت إضافة دعم الهوامش بين الصفحات.
يمكن توفير سمة
- دعم واجهات برمجة التطبيقات Accessibility API:
- التغييرات لمكتبة دعم الإصدار 4:
-
- تمت إضافة "
EdgeEffectCompat" إلى تتيحEdgeEffect. - تمت إضافة
LocalBroadcastManagerللسماح للتطبيقات بسهولة. التسجيل والحصول على الأهداف داخل طلب واحد دون وبثها على مستوى العالم. - تمت إضافة دعم في
ViewCompatللتحقق من التمرير الزائد وضبطه. أوضاعViewعلى نظام Android 2.3 والإصدارات الأحدث. - التغييرات على واجهات برمجة تطبيقات Fragment:
- تمت إضافة واجهات برمجة تطبيقات جديدة للتحكّم في إمكانية رؤية القوائم الجديدة.
- تمت إضافة واجهات برمجة تطبيقات الرسوم المتحركة المخصصة.
- تمت إضافة واجهات برمجة التطبيقات في
FragmentActivityللاحتفاظ بالتخصيص بيانات مثيل غير التهيئة. - إصلاح أخطاء متنوعة.
- تم إصلاح خطأ
Loaderتسبب في مشاكل في إلغاءAsyncTaskعند التشغيل على Froyo والإصدارات الأقدم من المنصة. الدعم يستخدم الرمز الآن نسخته الخاصة منAsyncTaskلإبقاء القيم نفسها السلوك على جميع إصدارات الأنظمة الأساسية.
- تمت إضافة "
- التغييرات لمكتبة دعم الإصدار 4:
-
- إتاحة استخدام
Fragment.SavedState - إضافة
MotionEventCompatلإتاحة واجهات برمجة تطبيقاتMotionEventالأحدث - إضافة
VelocityTrackerCompatلإتاحة واجهات برمجة تطبيقاتVelocityTrackerجديدة - إضافة
ViewConfigurationCompatلإتاحة واجهات برمجة تطبيقاتViewConfigurationجديدة - جميع واجهات برمجة التطبيقات الجديدة (المتوفرة فقط في مكتبة الدعم) التي تتيح لك إنشاء واجهات مستخدم
باستخدام التنقل الأفقي، ما يتيح للمستخدمين التمرير سريعًا لليمين واليسار بين طرق عرض المحتوى. من الفئات إلى
على ما يلي:
ViewPager: جهازViewGroupيدير لطرق العرض الفرعية، والتي يمكن للمستخدم التمرير بينها.PagerAdapter: محوّل يملأViewPagerطرق العرض التي تمثل كل صفحة.FragmentPagerAdapter: امتدادPagerAdapterللقلب بين الأجزاء.FragmentStatePagerAdapter: امتدادPagerAdapterلطلب البحث التبديل بين الأجزاء التي تستخدم الدعم المتوفر في المكتبة للغةFragment.SavedState.
- إتاحة استخدام
- مكتبة دعم الإصدار 13 الجديد:
-
- تتضمّن
FragmentPagerAdapterوFragmentStatePagerAdapter. لإتاحة الترحيل الأفقي.هذه هي نفسها تمامًا واجهات برمجة التطبيقات التي تمت إضافتها إلى مكتبة دعم الإصدار 4، ولكن تعتمد على ومكونات النظام الأساسي الأخرى في Android 3.2. استخدم هذه المكتبة بدلاً من الإصدار 4 إذا كنت تطوِّر الإصدار 3.2 من نظام التشغيل Android والإصدارات الأحدث (جميع واجهات برمجة التطبيقات الأخرى في مكتبة الإصدار 4 متوفرة من قبل بمستوى واجهة برمجة التطبيقات) 13.
- تتضمّن
- التغييرات لمكتبة الإصدار 4:
-
- دعم الرسوم المتحركة للأجزاء
- حلّ المشاكل في "
Fragment.onActivityResult()" خطأ
المراجعة 22
مارس 2015
المراجعة 21.0.3
كانون الأول (ديسمبر) 2014
المراجعة 21.0.2
تشرين الثاني (نوفمبر) 2014
المراجعة 21.0.1
تشرين الثاني (نوفمبر) 2014
المراجعة 21
تشرين الأول (أكتوبر) 2014
المراجعة 20
تموز (يوليو) 2014
الإصدار 19.1.0
مارس 2014
الإصدار 19.0.1
كانون الأول (ديسمبر) 2013
المراجعة 19
تشرين الأول (أكتوبر) 2013
المراجعة 18
تموز (يوليو) 2013
المراجعة 13
أيار (مايو) 2013
المراجعة 12
شباط (فبراير) 2013
المراجعة 11
تشرين الثاني (نوفمبر) 2012
المراجعة 10
آب (أغسطس) 2012
المراجعة 9
حزيران (يونيو) 2012
المراجعة 8
نيسان (أبريل) 2012
المراجعة 7
آذار (مارس)، 2012
المراجعة 6
كانون الأول (ديسمبر)، 2011
ملاحظة: يتوفّر الآن مرجع لواجهات برمجة تطبيقات مكتبة الدعم مع
مراجع إطار العمل، على سبيل المثال: android.support.v4.app.
المراجعة 5
كانون الأول (ديسمبر)، 2011
المراجعة 4
تشرين الأول (أكتوبر) 2011
المراجعة 3
تموز (يوليو) 2011
المراجعة 2
أيار (مايو) 2011
المراجعة 1
آذار (مارس) 2011
الإصدار الأولي مع مكتبة الإصدار 4.