קטלוגים של גרסאות Gradle מאפשרות להוסיף ולתחזק יחסי תלות ויישומי פלאגין באופן שניתן להתאמה. שימוש בקטלוגים של גרסאות של Gradle מקל על ניהול של יחסי תלות ויישומי פלאגין כשיש מספר מודולים. במקום לכתוב בתוך הקוד, גרסאות ושמות של תלות בקובצי build נפרדים ועדכון כל אחד מהם בכל פעם שצריך לשדרג תלות, אפשר ליצור קטלוג גרסאות של יחסי תלות שמודולים שונים יכולים להפנות אליהם באופן בטוח לשימוש בעזרת Android Studio.
הדף הזה מספק מידע בסיסי על העברת אפליקציית Android שלך אל קטלוגים של גרסאות. מידע נוסף זמין במאמר הבא: להוסיף יחסי תלות של build ואת מסמכי העזרה של Gradle.
יצירת קובץ קטלוג גרסאות
מתחילים ביצירת קובץ קטלוג גרסאות. ב-gradle
של פרויקט הבסיס
תיקייה, יוצרים קובץ בשם libs.versions.toml
. Gradle מחפשת את הקטלוג
בקובץ libs.versions.toml
כברירת מחדל,
לכן אנחנו ממליצים להשתמש בשם ברירת המחדל הזה.
בקובץ libs.versions.toml
, מוסיפים את הקטעים הבאים:
[versions]
[libraries]
[plugins]
אלה הקטעים שיופיעו בקטעים:
- בבלוק
versions
, מגדירים משתנים שמחזיקים את הגרסאות של של יחסי התלות ויישומי פלאגין. אתם משתמשים במשתנים האלה בבלוקים הבאים: (הבלוקיםlibraries
ו-plugins
). - מגדירים את יחסי התלות בבלוק
libraries
. - בבלוק
plugins
, מגדירים את יישומי הפלאגין.
שלבי ההעברה
מומלץ לבצע את השלבים לפי הסדר שבו הם מופיעים. גרסת build יכולה לצרוך של יחסי התלות ויישומי פלאגין מסקריפטים של build ומקטלוגים בו-זמנית, כדי להקדיש את הזמן להעברת יחסי התלות ויישומי הפלאגין בנפרד.
תהליך ההעברה הוא:
- מוסיפים את הרשומה החדשה לקטלוג.
- מסנכרנים את פרויקט Android.
- צריך להחליף את הצהרת המחרוזת הקודמת ברכיב הגישה הבטוח מסוג קטלוג.
העברת יחסי התלות
צריך להוסיף רשומה לכל תלות בקטע versions
ובקטע libraries
של הקובץ libs.versions.toml
. צריך לסנכרן את הפרויקט ואז להחליף את הפרויקטים
את ההצהרות בקובצי ה-build עם שמות הקטלוג שלהם.
בקטע הקוד הזה מוצג הקובץ 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.
בקובץ build.gradle.kts
של כל מודול שדורש את התלות,
מגדירים את יחסי התלות לפי השמות שהגדרתם בקובץ ה-TOML.
Kotlin
dependencies { implementation(libs.androidx.ktx) }
מגניב
dependencies { implementation libs.androidx.ktx }
העברת יישומי פלאגין
מוסיפים רשומה לכל פלאגין בקטעים של הגרסאות ויישומי הפלאגין של
את הקובץ libs.versions.toml
. צריך לסנכרן את הפרויקט ואז להחליף את הפרויקטים
הצהרות בבלוק plugins{}
בקובצי ה-build עם הקטלוג שלהם
שמות.
בקטע הקוד הזה מוצג הקובץ 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
) כדי לשפר את התוצאות
עזרה בהשלמת קוד
בקובצי ה-build.
הקוד הבא מראה איך להגדיר את הפלאגין 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 עדיין נמצאים בפיתוח פעיל. מידע נוסף על מה שעדיין לא נתמך, אפשר לעיין בעיות ומגבלות ידועות.