פלאגין Android Gradle 8.2.0 (נובמבר 2023)
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
Android Gradle plugin 8.2.0 הוא גרסה מרכזית שכוללת מגוון תכונות ושיפורים חדשים.
תאימות
רמת ה-API המקסימלית שפלאגין Android Gradle 8.2 תומך בה היא רמת API 34.
מידע נוסף על תאימות:
מאקרו חדש לציון נתיב ה-JDK
#GRADLE_LOCAL_JAVA_HOME
הוא מאקרו חדש שבעזרתו אפשר לציין את הנתיב של ה-JDK. כך קל יותר לציין את נתיב הבית של Java שמשמש להרצה של הדימון (תהליך הרקע) של Gradle בפרויקט. בחירת הנתיב מאוחסנת בשדה java.home
בקובץ .gradle/config.properties
. מגדירים את השדה הזה דרך הגדרות Gradle JDK ב-Android Studio: File (או Android Studio ב-macOS) > Settings > Build, Execution, Deployment > Build
Tools > Gradle.
בפרויקטים חדשים ייעשה שימוש ב-#GRADLE_LOCAL_JAVA_HOME
כברירת מחדל. פרויקטים קיימים יועברו באופן אוטומטי למאקרו החדש אחרי סנכרון מוצלח, אלא אם אתם כבר משתמשים במאקרו כמו #JAVA_HOME
.
אלה היתרונות העיקריים של המאקרו החדש:
- אפשר לשנות ידנית את הנתיב של JDK כדי להפעיל את הסנכרון בלי לפתוח את הפרויקט קודם.
- פחות שגיאות שקשורות לגרסאות Gradle ולגרסאות JDK של הפרויקט שלא תואמות, כי יש מקור אחד לאמת לגבי הבחירה של Gradle JDK.
בעיות שתוקנו
Android Gradle plugin 8.2.0
בעיות שתוקנו |
Android Gradle Plugin |
סוגי מקורות בהתאמה אישית צריכים ליצור קבוצות מקורות עם כמה טעמים
|
בדיקת גרסת ה-SDK לא מטפלת במשתמשים עם תוספים של SDK
|
DependenciesInfoBuilder needs API update + doc
|
DexingNoClasspathTransform (minSdk >= 24) עם יעד Java 11 נכשל בגלל רכיבי עץ חסרים
|
DslExtension.Builder.extendProjectWith() לא פועלת כפי שמתואר ב-Groovy
|
הוספת ה-API VariantSelector.withFlavor שלא משתמש ב-kotlin.Pair
|
ב-AndroidLintAnalysisTask ( :lintAnalyzeExternalRelease) חל החמצה של מטמון כי קובץ proguard.txt השתנה
|
המניפסט הממוזג של האפליקציה מכיל את המאפיינים extractNativeLibs ו-useEmbeddedDex מיחסי התלות
|
AIDL נכשל עם build-tools 33.0.0
|
AGP: חשיפת הנתיב לכלי AIDL ולקובץ AIDL של המסגרת כ-API ציבורי
|
בקשה: לאפשר לסביבת הפיתוח האינטגרטית להציע תיקון לבעיה 'נדרשת גרסה ASM9 ל-PermittedSubclasses'
|
יעד קוד בייט 17 בזמן הידור AGP
|
הסרת VariantManager.getModifiedName
|
AndroidTest.packaging.jniLibs.keepDebugSymbols לא משפיע על האריזה של androidTest
|
משימות הבדיקה של GMD instrumentation נתקעות, ובניסיון חוזר הן מתחילות להיכשל
|
הפונקציה generateLocaleConfig ב-agp 8.1.0 משתמשת בסדר לא דטרמיניסטית, וכתוצאה מכך ה-builds לא ניתנים לשחזור
|
ב-ProcessApplicationManifest.navigationJsons יש קבצים עם נתיבים מוחלטים
|
אסור לגשת ל-GradleBuildProject.Builder דרך AnalyticsConfiguratorService אחרי שיוצרים את AnalyticsService
|
AndroidTest.packaging.jniLibs.keepDebugSymbols לא משפיע על האריזה של androidTest
|
איסוף (compilation) מותר לערכים לא חוקיים של צבע
|
הערך של ReplaceWith שגוי ב-VariantBuilder
|
Gradle 8.1 מפר את האחסון במטמון של ההגדרות בגלל .gradle/.android/analytics.settings
|
הודעות על הוצאה משימוש לא משתמשות ב-ReplaceWith
|
חשיפת דרך לקבל את גרסת ברירת המחדל של NDK
|
כדי להריץ את הפלאגין של Android Gradle, צריך Java 17.
|
חוסר תאימות בין ASM Transform לבין toAppend()
|
תיקון שגיאות Lint כשמריצים איתור שגיאות באמצעות K2 UAST דרך Gradle בפרויקט KMP
|
תמיכה ב-missingDimensionStrategy ברמת הווריאנט, ואולי גם ב-Fallback בהתאמה לסוג/לסגנון ה-build
|
השדה android.injected.studio.version הוסר ב-Android Studio Giraffe
|
הוספה של היכולת להשבית את AndroidXDependencyCheck
|
הפונקציה generateLocaleConfig ב-agp 8.1.0 משתמשת בסדר לא דטרמיניסטית, וכתוצאה מכך ה-builds לא ניתנים לשחזור
|
הצגת דרישות לגרסאות R8 או D8 במטא-נתונים של AAR (למשל, ל-coreLibraryDesugaring ול-API חדש מחוץ לקו)
|
אזהרת סנכרון: "לא צריך לגשת ל-GradleBuildProject.Builder דרך AnalyticsConfiguratorService אחרי שיוצרים את AnalyticsService"
|
עדכון לאבן דרך או לגרסת RC של Gradle 8.2
|
אין גישה ל-'java.lang.Comparable'
|
androidResources לא זמין במודול הספרייה של Android
|
Execution failed for task ':app:mergeReleaseClasses' after Updating AGP from 8.0.2 to 8.1.0
|
Gradle 8.1 מפר את האחסון במטמון של ההגדרות בגלל .gradle/.android/analytics.settings
|
[AGP 8.1.0] ./gradlew test fails with "Unable to find manifest output" if both splits.abi.isEnable and testOptions.unitTests.isIncludeAndroidResources are true
|
Android Studio Giraffe לא מתייחס ל-versionCodeOverride עם AGP 8.1
|
AGP 8.1.0 מסיר את האפליקציה אחרי הרצת בדיקות עם מכשירי מדידה – 7.4.2 לא מסיר
|
טרנספורמציה של קובץ APK מובילה לשגיאה ב-ListingFileRedirectTask
|
HEDGEHOG REGRESSION: Run button is delayed by a few seconds (Creating spec)
|
|
Dexer (D8) |
הפעלת רשומות מקוריות וכיתות חתולות במהלך הוספה לאינדקס לגרסאות API מגרסה 34 ואילך
|
|
Lint |
בדיקת איתור שגיאות בקוד (lint) בזמן יצירה לא מטפלת היטב ב-AppComponentFactory
|
גרסאות האלפא של Lint 8.2.0 עדיין לא תומכות בייבוא פונקציות ברמה העליונה ב-Kotlin
|
הוספת אפשרות לא לכלול את מספרי השורות והעמודות בבסיס לזיהוי שגיאות בקוד
|
הוספת אפשרות לא לכלול את מספרי השורות והעמודות בבסיס לזיהוי שגיאות בקוד
|
בדיקות Lint לא תומכות בתכונות השפה של Java 17
|
ב-Bumblebee 2021.1.1 תיקון 1 מצוין שגרסה ישנה (20030203.000550) של commons-io חדשה יותר מ-2.11.0.
|
גרסאות האלפא של Lint 8.2.0 עדיין לא תומכות בייבוא פונקציות ברמה העליונה ב-Kotlin
|
ב-Bumblebee 2021.1.1 תיקון 1 מצוין שגרסה ישנה (20030203.000550) של commons-io חדשה יותר מ-2.11.0.
|
גרסת Android Studio מסוימת מסומנת בטעות כגרסה לא עדכנית.
|
Lint מתעלם מבעיה ב-UseValueOf כשמשתמשים ב-K2 UAST
|
בעיות לא צפויות מפרויקט אחר שסומנו על ידי Android Lint
|
Android Lint נכשל בספריית KMP עם השגיאה 'לנכס 'variantInputs.name' אין ערך מוגדר'.
|
|
שילוב איתור שגיאות בקוד |
שגיאת איתור שגיאות בקוד (lint) מסוג DuplicatePlatformClasses כתוצאה מהתלות ב-testImplementation
|
|
Shrinker (R8) |
java.lang.VerifyError: Verifier rejected class
|
ה-build נתקע ב-:minifyReleaseWithR8 כשמשתמשים בספריית Apache POI
|
בגרסה 1.9 של Kotlin, פונקציות הלמה של Kotlin נהרסות על ידי R8 אם בדיקות הערך null מוסרות
|
|
Android Gradle plugin 8.2.1
בעיות שתוקנו |
Android Gradle Plugin |
לא להריץ את המשימה dexing על הכיתות של פרויקטים משניים שכבר עברו תהליך dex באמצעות טרנספורמציות של ארטיפקטים
|
Android Gradle Plugin נכשל עם JavaVersion.VERSION_11 ו-OpenJDK 21 ea
|
|
Dexer (D8) |
הסרת סוכר מרשומים ל-Android U
|
|
Shrinker (R8) |
R8 יוצר קובץ dex שבור שמתקבלת ממנו חריגה מסוג class cast בזמן הריצה
|
R8 גורם לשינוי בממשק לממשק לא נגיש
|
קריסה של R8 Flurry SDK עם AGP 8.2.0
|
Android - R8 causes subclass of LinearLayoutManager to crash
|
ClassCastException ב-R8 כשאריזה מחדש מופעלת והתכונות 'כיווץ', 'ערפול קוד' ו'אופטימיזציה' מושבתות
|
R8 תקוע ב-BridgeAnalyzer.analyzeMethod
|
R8 v8.2.33, קריסה בסביבת זמן ריצה לאחר השדרוג עם השגיאה "java.lang.VerifyError: Bad type on operand stack"
|
|
Android Gradle plugin 8.2.2
בעיות שתוקנו |
Android Gradle Plugin |
לא ניתן להגדיר את גרסת JaCoCo ב-AGP 8.2.0
|
|
Dexer (D8) |
[desugared library] Desugared library version 2.1 is not compatible with previous versions of R8
|
האם האופטימיזציות פועלות גם עם D8 בלבד?
|
|
Shrinker (R8) |
[R8 8.3.21] גרסה R8 8.3.21 גדולה ב-1.57MB מגרסה R8 8.1.56
|
הפונקציה class.getInterfaces() מחזירה ערך ריק
|
|
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-02-28 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-02-28 (שעון UTC)."],[],[]]