إعداد مكتبة الدعم

ملاحظة: مع إصدار Android 9.0 (المستوى 28 من واجهة برمجة التطبيقات)، أصبح هناك إصدار جديد من مكتبة الدعم يُسمى AndroidX وهو جزء من Jetpack. تحتوي مكتبة AndroidX على مكتبة الدعم الحالية، كما تتضمّن أحدث مكونات Jetpack.

يمكنك مواصلة استخدام مكتبة الدعم. ستظلّ العناصر السابقة (الإصدار 27 والإصدارات الأقدم والمُعبَّأة بتنسيق android.support.*) متاحة على Google Maven. ومع ذلك، سيتم تطوير كل المكتبات الجديدة في مكتبة AndroidX.

ننصحك باستخدام مكتبات AndroidX في جميع المشاريع الجديدة. ننصحك أيضًا بالتفكير في نقل المشاريع الحالية إلى AndroidX أيضًا.

تعتمد طريقة إعداد "مكتبات دعم Android" في مشروع التطوير على الميزات التي تريد استخدامها ونطاق إصدارات نظام Android التي تريد توافق تطبيقك معها.

يرشدك هذا المستند خلال عملية تنزيل حزمة "مكتبة الدعم" وإضافة المكتبات إلى بيئة التطوير.

تتوفّر مكتبات الدعم الآن من خلال مستودع Maven في Google. لم تعُد ميزة تنزيل المكتبات من خلال أداة SDK Manager متاحة، وسيتمّ إيقاف هذه الوظيفة قريبًا.

اختيار مكتبات الدعم

قبل إضافة "مكتبة دعم" إلى تطبيقك، حدِّد الميزات التي تريد تضمينها وأدنى إصدارات Android التي تريد إتاحة استخدامها. لمزيد من المعلومات حول الميزات التي تقدّمها المكتبات المختلفة، يُرجى الاطّلاع على ميزات مكتبة الدعم.

إضافة مكتبات الدعم

لاستخدام إحدى مكتبات الدعم، يجب تعديل تبعيات مسار الصفوف في مشروع تطبيقك ضمن بيئة التطوير. ويجب تنفيذ هذا الإجراء لكل "مكتبة دعم" تريد استخدامها.

لإضافة مكتبة دعم إلى مشروع تطبيقك:

  1. أدرِج مستودع 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'
            // }
        }
    }
  2. لكل وحدة تريد استخدام مكتبة دعم فيها، أضِف المكتبة في القسم dependencies من ملف build.gradle للوحدة. على سبيل المثال، لإضافة الإصدار 4 Core-utils، أضِف ما يلي:
    dependencies {
        ...
        implementation "com.android.support:support-core-utils:28.0.0"
    }

تنبيه: قد يؤدي استخدام التبعيات الديناميكية (مثل palette-v7:23.0.+) إلى إجراء تحديثات غير متوقعة للإصدار وعدم التوافق مع الانحدار. ننصحك بتحديد إصدار مكتبة بشكل صريح (على سبيل المثال، palette-v7:28.0.0).

استخدام واجهات برمجة تطبيقات "مكتبة الدعم"

عادةً ما تحمل فئات مكتبة الدعم التي توفّر دعمًا لواجهات برمجة التطبيقات الحالية للإطار الأساسي الاسم نفسه لفئة الإطار الأساسي، ولكنّها تكون متوفّرة في حِزم فئة android.support، أو تحمل لاحقة *Compat.

تحذير: عند استخدام فئات من مكتبة الدعم، تأكَّد من استيراد الفئة من الحزمة المناسبة. على سبيل المثال، عند تطبيق الفئة ActionBar:

  • android.support.v7.app.ActionBar عند استخدام "مكتبة الدعم"
  • android.app.ActionBar عند تطوير التطبيقات للمستوى 11 أو أعلى من واجهة برمجة التطبيقات فقط

ملاحظة: بعد تضمين "مكتبة الدعم" في مشروع تطبيقك، ننصحك بشدةبتصغير تطبيقك وتشفيره وتحسينه قبل طرحه. بالإضافة إلى حماية رمز المصدر من خلال إخفاء مفاتيح فك التشفير، يؤدي تقليص الوقت إلى إزالة الفئات غير المستخدَمة من أي مكتبات يتم تضمينها في تطبيقك، ما يبقي حجم تنزيل التطبيق صغيرًا قدر الإمكان.

تتوفّر إرشادات إضافية لاستخدام بعض ميزات "مكتبة الدعم" في الفصول التدريبية والأدلة والعيّنات المخصّصة لمطوّري تطبيقات Android. لمزيد من المعلومات عن فئات وطُرق "مكتبة الدعم" الفردية، اطّلِع على حِزم 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 هو أعلى إصدار تطلبه أي من المكتبات المحدّدة. على سبيل المثال، إذا كان تطبيقك يتضمّن كلّ من مكتبة Preference Support Library‏ (الإصدار 14) ومكتبة Leanback Library‏ (الإصدار 17)، يجب ألا يقلّ الإصدار الأدنى من حزمة تطوير البرامج (SDK) عن 17 أو إصدار أحدث.