تتيح لك كتالوجات إصدارات Gradle إضافة تبعيات ومكونات إضافية والحفاظ عليها بطريقة قابلة للتوسع. يؤدي استخدام كتالوجات إصدار Gradle إلى تسهيل إدارة التبعيات والمكوّنات الإضافية عندما تكون لديك وحدات متعددة. بدلاً من استخدام أسماء وإصدارات التبعية الثابتة في ملفات الإصدار الفردية وتعديل كل إدخال كلما احتجت إلى ترقية إحدى الاعتماديات، يمكنك إنشاء كتالوج إصدار مركزي يتضمّن التبعيات التي يمكن لوحدات متعددة الرجوع إليها بطريقة آمنة مع المساعدة في "استوديو Android".
توفر هذه الصفحة معلومات أساسية حول ترحيل تطبيق 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") }
رائع
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" }
وننصحك باستخدام تسمية مُقترَحة لمجموعة التبعيات في الكتالوجات وهي حالة الكباب (مثل androidx-ktx
) للحصول على مساعدة أفضل في إكمال الرمز في ملفات الإصدار.
في ملف build.gradle.kts
لكل وحدة تتطلّب التبعية، حدِّد التبعيات بالأسماء التي حدّدتها في ملف TOML.
Kotlin
dependencies { implementation(libs.androidx.ktx) }
رائع
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") }
رائع
// 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) }
رائع
// Top-level build.gradle plugins { alias libs.plugins.android.application apply false } // module build.gradle plugins { alias libs.plugins.android.application }
مزيد من المعلومات
للتعرّف على الخيارات الإضافية لضبط كتالوج الإصدارات، راجِع الموارد التالية:
- يقدّم تنسيق ملف TOML لكتالوج الإصدارات خيارات إضافية لضبط ملف الكتالوج.
- الآن في Android هو نموذج التطبيق الذي يستخدم كتالوجات الإصدارات.
المشاكل المعروفة
لا تزال كتالوجات إصدار Gradle قيد التطوير النشط. لمزيد من المعلومات حول الميزات غير المتاحة حتى الآن، يمكنك الاطّلاع على المشاكل والقيود المعروفة.