ملاحظة: مع طرح Android 9.0 (مستوى واجهة برمجة التطبيقات 28)، يتوفّر إصدار جديد من مكتبة الدعم يُعرف باسم AndroidX وهو جزء من Jetpack.
تحتوي مكتبة AndroidX على مكتبة الدعم الحالية، كما تتضمّن أحدث مكونات Jetpack.
يمكنك مواصلة استخدام مكتبة الدعم.
ستبقى العناصر القديمة (الإصدارات 27 والإصدارات الأقدم، والتي تم تجميعها على شكل android.support.*) متاحة على Google Maven. ومع ذلك، سيتم تطوير جميع المكتبات الجديدة في مكتبة AndroidX.
ننصح باستخدام مكتبات AndroidX في جميع المشاريع الجديدة. ننصحك أيضًا بنقل المشاريع الحالية إلى AndroidX.
تعتمد طريقة إعداد "مكتبات دعم Android" في مشروع التطوير على الميزات التي تريد استخدامها ونطاق إصدارات نظام Android الأساسي التي تريد أن يتوافق معها تطبيقك.
يوضّح لك هذا المستند كيفية تنزيل حزمة Support Library وإضافة المكتبات إلى بيئة التطوير.
تتوفّر مكتبات الدعم الآن من خلال مستودع Maven من Google. لم نَعُد نتيح تنزيل المكتبات من خلال "أداة إدارة حزمة تطوير البرامج (SDK)"، وسيتم إزالة هذه الوظيفة قريبًا.
اختيار مكتبات الدعم
قبل إضافة إحدى مكتبات الدعم إلى تطبيقك، حدِّد الميزات التي تريد تضمينها وأدنى إصدارات Android التي تريد أن يتوافق معها التطبيق. لمزيد من المعلومات حول الميزات التي توفّرها المكتبات المختلفة، يمكنك الاطّلاع على ميزات مكتبة الدعم.
إضافة مكتبات الدعم
لاستخدام إحدى "مكتبات الدعم"، عليك تعديل تبعيات مسار الفئة في مشروع تطبيقك ضمن بيئة التطوير. يجب تنفيذ هذا الإجراء لكل مكتبة دعم تريد استخدامها.
لإضافة "مكتبة دعم" إلى مشروع تطبيقك، اتّبِع الخطوات التالية:
- أدرِج مستودع Maven من Google في ملف
settings.gradleالخاص بمشروعك.dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() // If you're using a version of Gradle lower than 4.1, you must // instead use: // // maven { // url 'https://maven.google.com' // } } }
- لكل وحدة تريد استخدام "مكتبة الدعم" فيها، أضِف المكتبة في قسم
dependenciesمن ملفbuild.gradleالخاص بالوحدة. على سبيل المثال، لإضافة مكتبة core-utils الإصدار 4، أضِف ما يلي:dependencies { ... implementation "com.android.support:support-core-utils:28.0.0" }
تنبيه: يمكن أن يؤدي استخدام الاعتماديات الديناميكية (على سبيل المثال، palette-v7:23.0.+) إلى حدوث تحديثات غير متوقّعة للإصدارات ومشاكل في التوافق مع الإصدارات القديمة. ننصحك بتحديد إصدار المكتبة بشكل صريح (على سبيل المثال، palette-v7:28.0.0).
استخدام واجهات برمجة التطبيقات في "مكتبة الدعم"
تحمل فئات Support Library التي توفّر توافقًا مع واجهات برمجة التطبيقات الحالية في إطار العمل عادةً الاسم نفسه الذي تحمله فئة إطار العمل، ولكنها تقع في حِزم فئات android.support، أو تحمل اللاحقة *Compat.
تنبيه: عند استخدام فئات من مكتبة الدعم، تأكَّد من استيراد الفئة من الحزمة المناسبة. على سبيل المثال، عند تطبيق الفئة ActionBar:
android.support.v7.app.ActionBarعند استخدام مكتبة الدعم.android.app.ActionBarعند التطوير فقط لمستوى واجهة برمجة التطبيقات 11 أو أعلى.
ملاحظة: بعد تضمين "مكتبة الدعم" في مشروع تطبيقك، ننصحك بشدة بتقليل حجم تطبيقك وتشويشه وتحسينه قبل إصداره. بالإضافة إلى حماية الرمز المصدر من خلال إخفاء مفاتيح فك التشفير، تعمل عملية تقليل الحجم على إزالة الفئات غير المستخدَمة من أي مكتبات تضمّنها في تطبيقك، ما يحافظ على حجم التنزيل لتطبيقك في أصغر حجم ممكن.
تتوفّر إرشادات إضافية حول استخدام بعض ميزات "مكتبة الدعم" في صفوف التدريب والأدلّة والأمثلة الخاصة بمطوّري تطبيقات Android. لمزيد من المعلومات حول فئات وطُرق Support Library الفردية، راجِع حِزم android.support في مرجع واجهة برمجة التطبيقات.
التغييرات على بيان البيان
إذا كنت تريد زيادة التوافق مع الإصدارات القديمة لتطبيقك الحالي مع إصدار أقدم من واجهة برمجة التطبيقات Android باستخدام "مكتبة الدعم"، احرص على تعديل ملف البيان الخاص بتطبيقك. على وجه التحديد، يجب تعديل عنصر android:minSdkVersion
في العلامة
<uses-sdk> في ملف البيان إلى رقم الإصدار الجديد الأقل، كما هو موضّح أدناه:
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="23" />
يُعلم إعداد ملف البيان Google Play بأنّه يمكن تثبيت تطبيقك على الأجهزة التي تعمل بالإصدار 4.0 من نظام التشغيل Android (المستوى 14 من واجهة برمجة التطبيقات) والإصدارات الأحدث.
إذا كنت تستخدم ملفات تصميم Gradle، سيؤدي الإعداد minSdkVersion في ملف التصميم إلى إلغاء إعدادات البيان.
plugins { id 'com.android.application' } android { ... defaultConfig { minSdkVersion 16 ... } ... }
في هذه الحالة، يوضّح إعداد ملف الإصدار على Google Play أنّه يمكن تثبيت تنويعة التصميم التلقائية لتطبيقك على الأجهزة التي تعمل بالإصدار 4.1 من نظام التشغيل Android (مستوى واجهة برمجة التطبيقات 16) والإصدارات الأحدث. لمزيد من المعلومات حول تنويعات الإصدار، يُرجى الاطّلاع على نظرة عامة على نظام الإصدار.
ملاحظة: إذا كنت ستضمّن العديد من مكتبات الدعم، يجب أن يكون الحد الأدنى لإصدار حزمة تطوير البرامج (SDK) هو أعلى إصدار تتطلبه أي من المكتبات المحدّدة. على سبيل المثال، إذا كان تطبيقك يتضمّن كلاً من مكتبة توافق الإصدار 14 مع Preference ومكتبة Leanback الإصدار 17، يجب أن يكون الإصدار الأدنى من حزمة تطوير البرامج (SDK) هو 17 أو إصدارًا أحدث.