Android Gradle Plugin 7.2.0 (מאי 2022)
Android Gradle plugin 7.2.0 היא מהדורה מרכזית שכוללת מגוון של תכונות חדשות ושיפורים.
העדכון הקטן הזה תואם לגרסה Android Studio Chipmunk Patch 2 וכולל את תיקוני הבאגים הבאים:
- בעיה מספר 232438924: גרסה 7.2 של AndroidGradlePlugin גורמת לשיבוש ב-API של transform כשמשתמשים בה יחד עם ASM API
- בעיה מספר 231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
העדכון הקטן הזה תואם לגרסה Android Studio Chipmunk Patch 1 וכולל את תיקוני הבאגים הבאים:
- בעיה מספר 230361284: bundletool לא אורז פרופילים של Baseline בצורה נכונה
כדי לראות את תיקוני הבאגים האחרים שנכללים בגרסה הזו, אפשר לעיין בנתוני הגרסה של Android Studio Chipmunk Patch 1.
תאימות
גרסת מינימום | גרסת ברירת המחדל | הערות | |
---|---|---|---|
Gradle | 7.3.3 | 7.3.3 | יש מידע נוסף במאמר בנושא עדכון Gradle. |
SDK Build Tools | 30.0.3 | 30.0.3 | התקנה או הגדרה של SDK Build Tools. |
NDK | לא רלוונטי | 21.4.7075529 | התקנה או הגדרה של גרסה אחרת של NDK. |
JDK | 11 | 11 | מידע נוסף זמין במאמר בנושא הגדרת גרסת ה-JDK. |
אזהרה ובדיקה של Jetifier ב-Build Analyzer
כלי הניתוח של תהליך הבנייה מציג עכשיו אזהרה אם הקובץ gradle.properties
של הפרויקט כולל את android.enableJetifier=true
. הדגל הזה הוצג בגרסה קודמת של Android Studio כדי להפעיל את AndroidX בספריות שלא תומכות ב-AndroidX באופן מובנה. עם זאת, רוב המערכת האקולוגית של הספרייה עברה לתמיכה ב-AndroidX באופן מובנה, וכנראה שהפרויקט שלכם כבר לא צריך את הדגל Jetifier. בנוסף, הדגל יכול להוביל לביצועים איטיים יותר של הבנייה. אם האזהרה הזו מופיעה, אפשר להריץ בדיקה ב-Build Analyzer כדי לוודא שאפשר להסיר את הדגל.
תמיכה ב-test fixtures
החל מ-Android Studio Chipmunk Beta 1, Android Studio תומך גם ב-Android וגם ב-Java test fixtures. במדריך של Gradle בנושא שימוש ב-test fixtures{:.external} מפורט מידע נוסף על התכונה הזו ועל אופן השימוש בה בפרויקט Java.
כדי להפעיל את התכונה test fixtures במודול של ספריית Android, מוסיפים את השורה הבאה לקובץ build.gradle
ברמת הספרייה:
android {
testFixtures {
enable true
// enable testFixtures's android resources (disabled by default)
// androidResources true
}
}
כברירת מחדל, כשמפרסמים את הספרייה, מפורסם גם קובץ ה-AAR של ה-test fixtures עם הספרייה הראשית. קובץ המטא-נתונים של מודול Gradle יכיל מידע שיאפשר ל-Gradle להשתמש בארטיפקט הנכון כשמבקשים את רכיב testFixtures
.
כדי להשבית את הפרסום של קובץ ה-AAR של רכיבי הבדיקה בספרייה בגרסת ה-release,
מוסיפים את הקוד הבא לקובץ build.gradle
ברמת הספרייה:
afterEvaluate {
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}
כדי להשתמש ב-AAR של מתקני הבדיקה של ספריית Android שפורסמה, אפשר להשתמש בשיטת העזר של Gradle testFixtures()
.
dependencies {
testImplementation testFixtures('com.example.company:publishedLib:1.0')
}
כברירת מחדל, הכלי lint ינתח מקורות של קובצי בדיקה. אפשר להגדיר את lint כך שיתעלם ממקורות של נתוני בדיקה באופן הבא:
android {
lint {
ignoreTestFixturesSources true
}
}
אין תמיכה בשורשי תוכן כפולים
החל מ-AGP 7.2, אי אפשר יותר לשתף את אותה תיקיית מקור בין כמה קבוצות של מקורות. לדוגמה, אי אפשר להשתמש באותם מקורות בדיקה גם לבדיקות יחידה וגם לבדיקות מכשור. מידע נוסף זמין במאמר שינוי ההגדרות של קבוצות ברירת המחדל של מקורות.