تتيح لك كتالوجات إصدارات Gradle إضافة التبعيات والمكوّنات الإضافية والحفاظ عليها بطريقة قابلة للتوسّع. يسهّل استخدام كتالوجات إصدارات Gradle إدارة التبعيات والمكوّنات الإضافية عند توفّر وحدات متعددة. بدلاً من الترميز الثابت لأسماء التبعيات وإصداراتها في ملفات الإصدار الفردية وتعديل كل إدخال عند الحاجة إلى ترقية إحدى التبعيات، يمكنك إنشاء كتالوج إصدار مركزي للتبعات يمكن أن تشير إليه الوحدات المختلفة بطريقة آمنة من حيث النوع بمساعدة Android Studio.
تقدّم هذه الصفحة معلومات أساسية حول نقل تطبيق Android إلى كتالوجات الإصدارات. لمزيد من المعلومات، اطّلِع على إضافة تبعيات الإصدار ومستندات Gradle.
إنشاء ملف كتالوج إصدار
ابدأ بإنشاء ملف فهرس الإصدارات. في مجلد gradle
المشروع الأساسي، أنشئ ملفًا باسم libs.versions.toml
. يبحث Gradle عن الفهرس في الملف libs.versions.toml
تلقائيًا، لذا ننصحك باستخدام هذا الاسم التلقائي.
في ملف libs.versions.toml
، أضِف الأقسام التالية:
[versions]
[libraries]
[plugins]
يتم استخدام الأقسام على النحو التالي:
- في حزمة
versions
، حدِّد المتغيرات التي تحتوي على إصدارات التبعيات والمكوّنات الإضافية. يمكنك استخدام هذه المتغيرات في المربّعات اللاحقة (المربّعانlibraries
وplugins
). - في المربّع
libraries
، حدِّد العناصر التابعة. - في الحزمة
plugins
، حدِّد المكوّنات الإضافية.
خطوات نقل البيانات
ننصحك باتّباع الخطوات بالترتيب المذكور. يمكن أن يستهلك الإصدار التبعيات والمكوّنات الإضافية من نصوص البرامج وقوائم البيانات في الوقت نفسه، لذا خذ وقتك في نقل التبعيات والمكوّنات الإضافية بشكل فردي.
تكون عملية نقل البيانات على النحو التالي:
- أضِف الإدخال الجديد إلى الفهرس.
- مزامنة مشروع Android
- استبدِل تعريف السلسلة السابق بموصّل آمن من حيث النوع خاص بالفهرس.
نقل المهام التابعة
أضِف إدخالاً لكل عنصر تابع في القسمَين versions
وlibraries
من ملف libs.versions.toml
. زامِن مشروعك، ثم استبدِل تعريفات العناصر في ملفات الإنشاء بأسماء العناصر في الكتالوج.
يعرض مقتطف الرمز البرمجي هذا الملف build.gradle.kts
قبل إزالة التبعية:
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.9.0") }
Groovy
dependencies { implementation 'androidx.core:core-ktx:1.9.0' }
يوضّح مقتطف الرمز البرمجي هذا كيفية تحديد التبعية في ملف قائمة الإصدارات:
[versions]
ktx = "1.9.0"
[libraries]
androidx-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "ktx" }
تكون التسمية المقترَحة لكتلة التبعيات في الكتالوجات هي kebab case (مثل
androidx-ktx
) للحصول على
مساعدة أفضل في إكمال الرمز
في ملفات الإنشاء.
في ملف build.gradle.kts
لكل وحدة تتطلّب العنصر التابع، حدِّد العناصر التابعة بالأسماء التي حدّدتها في ملف TOML.
Kotlin
dependencies { implementation(libs.androidx.ktx) }
Groovy
dependencies { implementation libs.androidx.ktx }
نقل المكوّنات الإضافية
أضِف إدخالاً لكل إضافة في قسمَي الإصدارات والإضافات في ملف libs.versions.toml
. زامِن مشروعك، ثم استبدِل تعريفات العناصر في الحزمة plugins{}
في ملفات الإنشاء بأسماء العناصر في الكتالوج.
يعرض مقتطف الرمز البرمجي هذا الملف build.gradle.kts
قبل إزالة المكوّن الإضافي:
Kotlin
// Top-level `build.gradle.kts` file plugins { id("com.android.application") version "7.4.1" apply false } // Module-level `build.gradle.kts` file plugins { id("com.android.application") }
Groovy
// Top-level `build.gradle` file plugins { id 'com.android.application' version '7.4.1' apply false } // Module-level `build.gradle` file plugins { id 'com.android.application' }
يوضّح مقتطف الرمز البرمجي هذا كيفية تحديد المكوّن الإضافي في ملف قائمة الإصدارات:
[versions]
androidGradlePlugin = "7.4.1"
[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
كما هو الحال مع التبعيات، فإنّ التنسيق المقترَح لإدخالات plugins
block catalog
هو kebab case (مثل android-application
) من أجل توفير مساعدة أفضل في إكمال الرمز
في ملفات الإصدار.
يوضّح الرمز التالي كيفية تحديد المكوّن الإضافي com.android.application
في ملفات build.gradle.kts
على مستوى الوحدة وأعلى مستوى. استخدِم alias
للمكوّنات الإضافية
التي تأتي من ملف كتالوج الإصدارات، واستخدِم id
للمكوّنات الإضافية التي لا تأتي
من ملف كتالوج الإصدارات، مثل
المكوّنات الإضافية المستندة إلى الاتفاقيات.
Kotlin
// Top-level build.gradle.kts plugins { alias(libs.plugins.android.application) apply false } // module build.gradle.kts plugins { alias(libs.plugins.android.application) }
Groovy
// Top-level build.gradle plugins { alias libs.plugins.android.application apply false } // module build.gradle plugins { alias libs.plugins.android.application }
مزيد من المعلومات
للاطّلاع على خيارات إضافية لإعداد قائمة إصداراتك، يُرجى الرجوع إلى المراجع التالية:
- يوضّح تنسيق ملف TOML الخاص بكتالوج الإصدارات خيارات إضافية لإعداد ملف الكتالوج.
- Now in Android هو تطبيقنا النموذجي الذي يستخدم أدلة الإصدارات.