Android Gradle Plugin 8.8.0 (ינואר 2025)

‫פלאגין של Android Gradle 8.8.0 הוא גרסה מרכזית שכוללת מגוון של תכונות ושיפורים חדשים.

תאימות

רמת ה-API המקסימלית שנתמכת בפלאגין של Android Gradle בגרסה 8.8 היא 35. מידע נוסף על תאימות:

גרסת המינימום גרסת ברירת המחדל הערות
Gradle 8.10.2 8.10.2 יש מידע נוסף במאמר בנושא עדכון Gradle.
SDK Build Tools 35.0.0 35.0.0 צריך להתקין או להגדיר את SDK Build Tools.
NDK לא רלוונטי 27.0.12077973 צריך להתקין או להגדיר גרסה אחרת של NDK.
JDK 17 17 מידע נוסף זמין במאמר הגדרת גרסת ה-JDK.

בעיות שתוקנו

פלאגין של Android Gradle‏ ‎8.8.2

בעיות שתוקנו
פלאגין של Android Gradle
סקריפט אתחול 'C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle' שורה: 162
כלי לכיווץ (R8)
‫Gson proguard לא פועל כמו שצריך אחרי השדרוג ל-AGP 8.8
java.lang.VerifyError: Verifier rejected class
‫Leanback קורס כשהוא מוקטן באמצעות R8 שנכלל ב-AGP 8.10.0-alpha04

פלאגין של Android Gradle גרסה 8.8.1

בעיות שתוקנו
Dexer (D8)
הוספת OpenJDK 23 לבדיקה
כלי לכיווץ (R8)
‫java.lang.AbstractMethodError: מחלקת המקבל [...]$$Lambda$[...] לא מגדירה או יורשת הטמעה של השיטה שנפתרה [...] של הממשק [...]
NPE ב-Enqueuer שקשור לרשומה DexCallSite
‫R8 8.7.18 גורם לחריגת מצביע null בזמן ריצה כשמתבצעת קריאה ל-job?.cancel
‫java.lang.NoClassDefFoundError: רזולוציה נכשלה של: Lkotlin/LazyThreadSafetyMode
נראה ש-Monzo משתמשת בכמות מוגזמת של זמן ב-tree shaking
גרסת ה-build להפצה של AGP 8.8 נכשלת : R8: java.lang.NullPointerException: Cannot read field "b" because the return value of "com.android.tools.r8.internal.BS.a(com.android.tools.r8.internal.cR)" is null`

פלאגין של Android Gradle‏ ‎8.8.0

בעיות שתוקנו
פלאגין של Android Gradle
כדאי להוסיף הערה לסוג הקלט של JacocoTransform בתור @Classpath
‫com.android.build.api.variant.GeneratesApk צריך לחשוף את minSdk
הפלאגין com.android.settings לא מזהה את targetSdk
הפונקציה SourceDirectories.addGeneratedSourceDirectory לא מתאימה לכמה וריאנטים
הטמעת דגל להשבתת הבדיקה של גרסת AGP מינימלית
ל-AGP יש אינטראקציות מבלבלות עם הגדרת האפשרויות של מהדר Kotlin
‫AGP צריך לחשוף BuiltArtifactLoader ל-APK של פרויקט היעד בפרויקטים של com.android.test
‫[AGP] ספק Lazy SdkComponents.ndkDirectory לא מצליח ליצור ערך, אבל android.ndkDirectory API הנלהב פועל
אפשרויות פיתוח: הוספת אפשרות חדשה "הגדרת הרצת פיתוח" והגדרתה כברירת המחדל
לא ניתן לפתור את BuildConfig בבדיקות יחידה כשמשתמשים ב-android.enableBuildConfigAsBytecode=true
חבילות APK שנוצרו מחבילות לא מתחשבות בתמיכה בארגז החול לפרטיות
הפלאגין com.android.settings לא מזהה את targetSdk
Dexer (D8)
ספריית Desugar בגרסה 2.1.0 לא פועלת עם AGP בגרסה 8.5.2
Lint
חוסר תאימות של KtAnalysisSessionProvider עם בדיקות Lint שהוצגו בגרסה 8.7.0-alpha04
"False positive" WrongConstant when using PackageManager.ResolveInfoFlags.of with Kotlin
שגיאת Lint מסוג "צריך לציין מארח אחד לפחות" כשמגדירים סכימת מסנן Intent מסוג http או https
טיפול באנוטציות של שימוש בטיפוסים במקרים נוספים של UnknownNullness lint
‫AGP 8.6.1: רגרסיה – כשל ב-lint של WrongConstant כשמשתמשים ב-[Int].toLong()‎ בתוך @LongDef ב-Kotlin
‫AGP 8.7.0 – אזהרת Lint חיובית כוזבת RestrictedApi ב-NavOptionsBuilder.popUpTo
הודעת ה-lint‏ WrongConstant מופיעה פעמיים
האזהרה "MonochromeLauncherIcon: Monochrome icon is not defined" לא מזוהה על ידי Android Studio
‫AbstractAnnotationDetector בודק פונקציות או פונקציות בונות (constructors) שהועמסו באופן שגוי
‫Lint ImportAliasTestMode לא יוצר כינויי ייבוא לפונקציות ברמה העליונה
הודעת ה-lint‏ WrongConstant מופיעה פעמיים
אזהרות Lint חדשות מסוג ObsoleteSdkInt עם AGP 8.8
בדיקת ה-lint של android.permission.SCHEDULE_EXACT_ALARM מסווגת בטעות כאילו היא ניתנת רק לאפליקציות מערכת
מצב K2 מקפיץ אזהרת RestrictedApi כשמשתמשים ב-‎ .hasRoute(Route::class)‎ ב-Android Studio
שילוב Lint
משימת ה-Lint של הווריאנט לא נמצאה אחרי ההערכה
ה-Linting נכשל כשמייבאים קובץ AAR עם קובצי הטמעה