نقل إصدارك إلى كتالوجات الإصدارات

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

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

إنشاء ملف كتالوج الإصدارات

ابدأ بإنشاء ملف كتالوج الإصدارات. في المشروع الجذر "gradle" ، قم بإنشاء ملف باسم libs.versions.toml. تبحث Gradle عن الكتالوج في ملف libs.versions.toml تلقائيًا، لذا، ننصحك باستخدام هذا الاسم التلقائي

في ملف libs.versions.toml، أضِف الأقسام التالية:

[versions]

[libraries]

[plugins]

تُستخدم الأقسام على النحو التالي:

  • في مجموعة versions، حدِّد المتغيّرات التي تحتوي على نُسخ والتبعيات والمكونات الإضافية. ويمكنك استخدام هذه المتغيّرات في الأقسام اللاحقة (المربّعان libraries وplugins)
  • في كتلة libraries، حدِّد التبعيات.
  • في كتلة plugins، حدِّد المكوّنات الإضافية.

خطوات نقل البيانات

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

في ما يلي خطوات عملية نقل البيانات:

  1. أضِف الإدخال الجديد إلى الكتالوج.
  2. مزامنة مشروع Android:
  3. استبدِل تعريف السلسلة السابق بالموصّل الآمن من نوع الكتالوج.

نقل الموارد التابعة

أضِف إدخالاً لكل مستند اعتمادية في كلٍّ من القسمَين 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'

}

يعرض مقتطف الرمز هذا كيفية تحديد التبعية في الإصدار ملف Catalog:

[versions]
ktx = "1.9.0"

[libraries]
androidx-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "ktx" }

يُطلق على مجموعة التبعيات في الكتالوجات اسم كتلة الكباب (مثل androidx-ktx) للأفضل مساعدة في إكمال الرموز البرمجية في ملفات التصميم.

في الملف build.gradle.kts لكل وحدة تتطلب التبعية، تحديد التبعيات من خلال الأسماء التي حددتها في ملف TOML.

Kotlin

dependencies {
   implementation(libs.androidx.ktx)

}

Groovy

dependencies {
   implementation libs.androidx.ktx

}

Migrate Plugins (نقل المكوّنات الإضافية)

أضف إدخالاً لكل مكون إضافي في كل من أقسام الإصدارات والمكونات الإضافية ملف 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 الإدخالات هي حالة الكباب (مثل 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

}

مزيد من المعلومات

لمعرفة المزيد من المعلومات عن الخيارات الإضافية لضبط قائمة الإصدارات، يُرجى الاطّلاع على الموارد التالية:

المشاكل المعروفة

لا تزال كتالوجات إصدارات Gradle قيد التطوير النشط. لمزيد من المعلومات عن الميزات غير المتوفرة بعد، راجع الحدود والمشاكل المعروفة.