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

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

תאימות

רמת ה-API המקסימלית שנתמכת בפלאגין Android Gradle 8.7 היא רמת API 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, אם יש LintError כשמריצים את ה-lint באמצעות Gradle, משימת ניתוח ה-lint גורמת להשלכת חריגה. השינוי הזה מונע שמירה של שגיאות נדירות במטמון של ה-build.

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

בעיות שתוקנו

Android Gradle plugin 8.7.0

בעיות שתוקנו
Android Gradle Plugin
AGP צריך לציין שהוא תומך ב-API 35 שעומד להימסר בקרוב
AGP 8.5: הרבה יותר משימות mergeDebugResources פועלות, מה שמאט את תהליך ה-build
הגדרת ndk 27 כ-NDK שמוגדר כברירת מחדל ב-AGP.
AGP צריך לציין שהוא תומך ב-API 35 שעומד להימסר בקרוב
AGP צריך לציין שהוא תומך ב-API 35 שעומד להימסר בקרוב
Running Android lint failed with NoSuchFileException
BuildType#initWith מעתיק את הבלוק של העיבוד לאחר הייצור, אבל ההגדרות של ProGuard לא חלות
לא ניתן למזג תגים מסוג foregroundServiceType
Running Android lint failed with NoSuchFileException
Lint
כלי ה-Lint צריך לבדוק אם יש אובייקטים לא חוקיים שמשמשים כ-ViewGroups
"android:host is missing" עבור כתובות URI עם מארח null
חוסר תאימות של KtAnalysisSessionProvider לבדיקות איתור שגיאות בקוד (lint) שנוספו בגרסה 8.7.0-alpha04
"False positive" WrongConstant when using PackageManager.ResolveInfoFlags.of with Kotlin

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) מסוג 'צריך לציין מארח אחד לפחות' כשמגדירים סכימה של סינון כוונות מסוג http או https

Android Gradle plugin 8.7.2

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

Android Gradle plugin 8.7.3

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