פלאגין Android Gradle 8.2.0 (נובמבר 2023)
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
Android Gradle Plugin 8.2.0 הוא גרסה מרכזית שכוללת מגוון של תכונות ושיפורים חדשים.
תאימות
רמת ה-API המקסימלית שנתמכת ב-Android Gradle Plugin 8.2 היא 34.
מידע נוסף על תאימות:
|
גרסת המינימום |
גרסת ברירת המחדל |
הערות |
| Gradle |
8.2 |
8.2 |
יש מידע נוסף במאמר בנושא עדכון Gradle. |
| SDK Build Tools |
34.0.0 |
34.0.0 |
צריך להתקין או להגדיר את SDK Build Tools. |
| NDK |
לא רלוונטי |
25.1.8937393 |
צריך להתקין או להגדיר גרסה אחרת של NDK. |
| JDK |
17 |
17 |
מידע נוסף זמין במאמר בנושא הגדרת גרסת ה-JDK. |
מאקרו חדש לציון נתיב 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 (הגדרות > Build, Execution, Deployment > Build Tools > Gradle).
בפרויקטים חדשים, נעשה שימוש ב-#GRADLE_LOCAL_JAVA_HOME כברירת מחדל. פרויקטים קיימים יועברו אוטומטית למאקרו החדש אחרי סנכרון מוצלח, אלא אם אתם כבר משתמשים במאקרו כמו #JAVA_HOME.
היתרונות העיקריים של פקודת המאקרו החדשה הם:
- אפשר לשנות ידנית את הנתיב של JDK כדי להפעיל סנכרון בלי לפתוח קודם את הפרויקט.
- פחות שגיאות שקשורות לגרסאות לא תואמות של Gradle ו-JDK של פרויקט, כי יש מקור אמת יחיד לבחירת Gradle JDK.
בעיות שתוקנו
Android Gradle Plugin 8.2.2
| בעיות שתוקנו |
| פלאגין של Android Gradle |
|
לא ניתן להגדיר את גרסת JaCoCo ב-AGP 8.2.0
|
|
| Dexer (D8) |
|
[desugared library] גרסה 2.1 של desugared library לא תואמת לגרסאות קודמות של R8
|
|
האם האופטימיזציות פועלות גם עם D8?
|
|
| Shrinker (R8) |
|
[R8 8.3.21] הגודל של R8 8.3.21 גדול ב-1.57MB מ-R8 8.1.56
|
|
class.getInterfaces() מחזירה ערך ריק
|
|
Android Gradle Plugin 8.2.1
| בעיות שתוקנו |
| פלאגין של Android Gradle |
|
לא מפעילים את משימת ה-dexing בכיתות של פרויקטים משניים כשהן כבר עברו dexing באמצעות טרנספורמציות של ארטיפקטים
|
|
פלאגין Android Gradle נכשל עם JavaVersion.VERSION_11 ו-OpenJDK 21 ea
|
|
| Dexer (D8) |
|
Desugar records for Android U
|
|
| Shrinker (R8) |
|
R8 יוצר קובץ dex פגום שגורם לחריגת המרה של מחלקה בזמן ריצה
|
|
R8 גורם לשינוי בממשק לממשק לא נגיש
|
|
קריסת R8 Flurry SDK עם AGP 8.2.0
|
|
Android – R8 גורם לקריסה של מחלקת משנה של LinearLayoutManager
|
|
ClassCastException ב-R8 כשהאריזה מחדש מופעלת והכיווץ, הערפול והאופטימיזציה מושבתים
|
|
R8 נתקע ב-BridgeAnalyzer.analyzeMethod
|
|
R8 v8.2.33, קריסת זמן ריצה מסוג java.lang.VerifyError: Bad type on operand stack אחרי שדרוג
|
|
Android Gradle Plugin 8.2.0
| בעיות שתוקנו |
| פלאגין של Android Gradle |
|
סוגי מקור בהתאמה אישית צריכים ליצור ערכות מקורות מרובות
|
|
בדיקת גרסת ה-SDK לא מטפלת במשתמשים בתוספי SDK
|
|
צריך לעדכן את ה-API ואת המסמך של DependenciesInfoBuilder
|
|
DexingNoClasspathTransform (minSdk >= 24) עם יעד Java 11 נכשל בגלל גורמים מורכבים חסרים
|
|
השיטה DslExtension.Builder.extendProjectWith() לא פועלת כפי שמתואר ב-Groovy
|
|
נוסף VariantSelector.withFlavor API שלא משתמש ב-kotlin.Pair
|
AndroidLintAnalysisTask ( :lintAnalyzeExternalRelease) has a cache miss because `proguard.txt` has changed
|
|
קובץ המניפסט הממוזג של האפליקציה מכיל את המאפיינים extractNativeLibs ו-useEmbeddedDex מהתלויות
|
|
AIDL נכשל עם build-tools 33.0.0
|
|
AGP: חשיפת הנתיב לכלי AIDL ולקובץ AIDL של המסגרת כ-API ציבורי
|
|
בקשה: לאפשר ל-IDE להציע תיקון לבעיה 'PermittedSubclasses requires ASM9'
|
|
טירגוט של קוד בייט 17 כשמבצעים קומפילציה של AGP
|
|
Remove VariantManager.getModifiedName
|
|
ההגדרה AndroidTest.packaging.jniLibs.keepDebugSymbols לא משפיעה על האריזה של androidTest
|
|
משימות של בדיקת אינסטרומנטציה של GMD נתקעות, ואחרי ניסיון חוזר הן מתחילות להיכשל
|
|
generateLocaleConfig ב-AGP 8.1.0 משתמש בסדר לא דטרמיניסטי, מה שגורם לבעיות ב-builds שניתן לשחזר
|
|
ProcessApplicationManifest.navigationJsons מכיל קבצים עם נתיבים מוחלטים
|
|
אסור לגשת אל GradleBuildProject.Builder דרך AnalyticsConfiguratorService אחרי שיוצרים את AnalyticsService
|
|
ההגדרה AndroidTest.packaging.jniLibs.keepDebugSymbols לא משפיעה על האריזה של androidTest
|
|
הידור מותר לערכי צבע לא חוקיים
|
|
הערך של ReplaceWith לא נכון ב-VariantBuilder
|
|
גרסה Gradle 8.1 גורמת לבעיות במטמון ההגדרות בגלל .gradle/.android/analytics.settings
|
|
הודעות הוצאה משימוש לא משתמשות ב-`ReplaceWith`
|
|
חשיפת דרך לקבלת גרסת ה-NDK שמוגדרת כברירת מחדל
|
|
כדי להריץ את פלאגין Android Gradle, צריך Java 17.
|
|
חוסר תאימות בין ASM Transform לבין toAppend()
|
|
תיקון שגיאות LintErrors כשמריצים lint עם K2 UAST דרך Gradle בפרויקט KMP
|
|
תמיכה ב-missingDimensionStrategy ברמת Variant, ואולי התאמה של build type/flavor לגיבוי
|
|
המאפיין `android.injected.studio.version` הוסר ב-Android Studio Giraffe
|
|
נוספה האפשרות להשבית את AndroidXDependencyCheck
|
|
generateLocaleConfig ב-AGP 8.1.0 משתמש בסדר לא דטרמיניסטי, מה שגורם לבעיות ב-builds שניתן לשחזר
|
|
פרסום דרישות הגרסה של R8 / D8 במטא נתונים של AAR (לדוגמה, עבור coreLibraryDesugaring ו-API חדש מחוץ לשורה)
|
|
אזהרת סנכרון: GradleBuildProject.Builder should not be accessed through AnalyticsConfiguratorService after AnalyticsService is created
|
|
עדכון לגרסת אבן דרך או לגרסת RC של Gradle 8.2
|
|
אין גישה אל 'java.lang.Comparable'
|
|
androidResources לא זמין במודול של ספריית Android
|
|
הביצוע נכשל עבור המשימה ':app:mergeReleaseClasses' אחרי העדכון של AGP מגרסה 8.0.2 לגרסה 8.1.0
|
|
גרסה Gradle 8.1 גורמת לבעיות במטמון ההגדרות בגלל .gradle/.android/analytics.settings
|
|
[AGP 8.1.0] הפקודה ./gradlew test נכשלת עם השגיאה Unable to find manifest output (לא ניתן למצוא את פלט המניפסט) אם הערכים של splits.abi.isEnable ושל testOptions.unitTests.isIncludeAndroidResources הם 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) |
|
הפעלת הקלטה מקורית וכיתות חתומות כשמבצעים dexing ל-min-api 34 ומעלה
|
|
| Lint |
|
בדיקת lint שיצרת לא מטפלת ב-AppComponentFactory בצורה טובה
|
|
גרסאות אלפא של Lint 8.2.0 עדיין לא תומכות בייבוא פונקציות ברמה העליונה ב-Kotlin
|
|
הוספת אפשרות לא לכלול מספרי שורות ועמודות ב-lint baseline
|
|
הוספת אפשרות לא לכלול מספרי שורות ועמודות ב-lint baseline
|
|
בבדיקות Lint אין תמיכה בתכונות של שפת Java 17
|
|
ב-Bumblebee 2021.1.1 Patch 1 מוצגת גרסה ישנה (20030203.000550) של commons-io כחדשה יותר מ-2.11.0.
|
|
גרסאות אלפא של Lint 8.2.0 עדיין לא תומכות בייבוא פונקציות ברמה העליונה ב-Kotlin
|
|
ב-Bumblebee 2021.1.1 Patch 1 מוצגת גרסה ישנה (20030203.000550) של commons-io כחדשה יותר מ-2.11.0.
|
|
Android Studio מסמן גרסה שצוינה כלא עדכנית באופן שגוי.
|
|
Lint מתעלם מבעיית UseValueOf כשמשתמשים ב-K2 UAST
|
|
בעיות לא צפויות מפרויקט אחר שסומנו על ידי Android Lint
|
|
Android Lint נכשל בספריית KMP עם השגיאה `property 'variantInputs.name' doesn't have a configured value.`
|
|
| שילוב Lint |
|
שגיאת Lint DuplicatePlatformClasses מתלות testImplementation
|
|
| Shrinker (R8) |
|
java.lang.VerifyError: המאמת דחה את המחלקה
|
|
התהליך Build נתקע בשלב :minifyReleaseWithR8 כשמשתמשים בספריית Apache POI
|
|
Kotlin 1.9 גורם להשמדה של ביטויי למדה של Kotlin על ידי R8 אם בדיקות ה-null מוסרות
|
|
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2026-01-16 (שעון 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"]],["עדכון אחרון: 2026-01-16 (שעון UTC)."],[],[]]