Android Gradle Plugin 8.7.0 (אוקטובר 2024)

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

תאימות

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

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

שינוי בהתנהגות של Lint

החל מגרסה 8.7.0-alpha08 של Android Gradle Plugin, אם יש LintError כשמריצים את lint באמצעות Gradle, משימת הניתוח של lint זורקת חריגה. השינוי הזה מונע שמירה במטמון של שגיאות נדירות במטמון של הגרסה.

לצערנו, השינוי הזה גורם לכך שאי אפשר לבצע build לפרויקטים עם מופעי LintErrorאמיתיים בקובצי הבסיס של lint. הודעת השגיאה מכילה מידע על בדיקות ה-lint שגורמות לבעיה. במקרים מסוימים, עדכון של התלות בספרייה המתאימה עשוי לפתור את הבעיה. אם לא, אפשר להשבית את בדיקת ה-lint הבעייתית עד שיוצר הספרייה יתקן אותה.

בעיות שתוקנו

Android Gradle Plugin 8.7.3

בעיות שתוקנו
Lint
אזהרות רבות לגבי שיטת API של ניתוח שחסרה כשמריצים lint
תוצאת בדיקת lint חיובית כוזבת android.permission.SCHEDULE_EXACT_ALARM ניתנת רק לאפליקציות מערכת

Android Gradle Plugin 8.7.2

בעיות שתוקנו
Lint
‫AGP 8.7.0 – תוצאה חיובית שגויה של Lint‏ RestrictedApi ב-NavOptionsBuilder.popUpTo
Shrinker (R8)
‫[R8 8.6.27] הטמעת השיטה הוחלפה ב-`throw null`
קובצי proguard של Android שמוגדרים כברירת מחדל מציגים אזהרה כשמשתמשים בהם עם הגרסה הנוכחית של R8
אם ההודעה גדולה מדי, כלי האבחון MissingStartupProfileItemsDiagnostic גורם לקריסת לקוח Gradle עם שגיאת חריגה מזיכרון

Android Gradle Plugin 8.7.1

בעיות שתוקנו
Android Gradle Plugin
agp docs have a lot of TBD
Lint
‫AGP 8.6.1: רגרסיה – שגיאת Lint של WrongConstant כשמשתמשים ב-‎[Int].toLong()‎ בתוך ‎ @LongDef ב-Kotlin
שגיאת Lint ‏'At least one host must be specified' (צריך לציין לפחות מארח אחד) כשמגדירים סכמת intent-filter של http או https

Android Gradle Plugin 8.7.0

בעיות שתוקנו
Android Gradle Plugin
AGP should claim that it supports API 35 that is about to ship
‫AGP 8.5: הרבה מאוד משימות mergeDebugResources רצות, מה שמאט את ה-builds
הגדרת NDK 27 כ-NDK ברירת המחדל ב-AGP.
AGP should claim that it supports API 35 that is about to ship
AGP should claim that it supports API 35 that is about to ship
הפעלת Android lint נכשלה עם NoSuchFileException
‫BuildType#initWith מעתיק את בלוק העיבוד שלאחר מכן, אבל הגדרת ProGuard לא מוחלת
אי אפשר למזג תגים של foregroundServiceType
הפעלת Android lint נכשלה עם NoSuchFileException
Lint
‫Lint צריך לבדוק אם נעשה שימוש באובייקטים לא תקינים כ-ViewGroups
השגיאה android:host is missing (חסר מארח) מוצגת עבור כתובות URI עם מארח null
חוסר תאימות של KtAnalysisSessionProvider לבדיקות lint שהוצגו בגרסה 8.7.0-alpha04
‫"False positive" WrongConstant כשמשתמשים ב-PackageManager.ResolveInfoFlags.of עם Kotlin