פלאגין Android Gradle 8.3.0 (פברואר 2024)

הפלאגין Android Gradle 8.3.0 הוא גרסה ראשית שכוללת מגוון של ותכונות ושיפורים.

תאימות

רמת ה-API המקסימלית שבה תומך הפלאגין Android Gradle בגרסה 8.3, היא רמת API 34. הנה מידע נוסף על תאימות:

גרסת המינימום גרסת ברירת המחדל הערות
גרדל 8.4 8.4 מידע נוסף על עדכון Gradle
כלים לבניית SDK 34.0.0 34.0.0 התקנה או הגדרה של כלים לבניית SDK.
NDK לא רלוונטי 25.1.8937393 מתקינים או מגדירים גרסה אחרת של ה-NDK.
JDK 17 17 למידע נוסף, אפשר לעיין בהגדרה של גרסת ה-JDK.

התכונות החדשות בפלאגין של Android Gradle גרסה 8.3.

גרסאות תיקונים

בהמשך מופיעה רשימה של גרסאות התיקונים ב-Android Studio Iguana ו-Android Gradle 8.3.

Android Studio Iguana | 2023.2.1 תיקון 2 ו-AGP 8.3.2 (אפריל 2024)

העדכון הקטן הזה כולל תיקוני הבאגים האלה.

Android Studio Iguana | תיקון 1 בגרסת 2023.2.1 ו-AGP 8.3.1 (מרץ 2024)

העדכון הקטן הזה כולל תיקוני הבאגים האלה.

תמיכה בקטלוגים של גרסאות Gradle

Android Studio תומך ב-TOML Gradle Version Catalogs, תכונה שמאפשרת לנהל את יחסי התלות במקום מרכזי אחד ולשתף ואת יחסי התלות בין מודולים או פרויקטים. עכשיו קל יותר עם Android Studio להגדיר קטלוגים של גרסאות באמצעות הצעות לעריכה ושילוב עם תיבת הדו-שיח Project constructure. בעזרת הקישור הבא אפשר הגדרה והגדרה של קטלוגים של גרסאות Gradle או איך מעבירים את ה-build לקטלוגים של גרסאות.

השלמת קוד וניווט

ב-Android Studio אפשר להשלים את הקוד כשעורכים קטלוג גרסאות פורמט הקובץ TOML או הוספת תלות מקטלוג גרסאות ל-build חדש. כדי להשלים את כתיבת הקוד, מקישים על Ctrl+רווח (Command+מקש הרווח ב-macOS). בנוסף, אפשר לנווט במהירות מ הפניה לתלות בקובץ ה-build.gradle של האפליקציה למקום שבו היא הוצהרה בקטלוג הגרסאות, מקישים על Ctrl+b (Command+b ב-macOS).

השלמת הקוד בזמן הוספת תלות

אינטגרציה עם תיבת הדו-שיח של מבנה הפרויקט

אם בפרויקט שלכם נעשה שימוש בקטלוג גרסאות שהוגדר בפורמט הקובץ TOML, תוכלו: לערוך את המשתנים שהגדרתם כאן באמצעות תיבת הדו-שיח Project constructure תצוגת משתנים (קובץ > מבנה הפרויקט > משתנים) ב-Android Studio. לכל קטלוג גרסאות יש תפריט נפתח שמפרט את המשתנים הבאים: של הקטלוג הזה. כדי לערוך משתנה, לוחצים על הערך שלו ומחליפים אותו. אחרי ש שומרים את השינויים האלה, קובץ ה-TOML מתעדכן בהתאם.

משתנים מקטלוג גרסאות בתיבת הדו-שיח של מבנה הפרויקט

אפשר גם לעדכן את יחסי התלות בתיבת הדו-שיח Project constructure תצוגת תלות (קובץ > מבנה הפרויקט > יחסי תלות). לעדכון גרסאות באמצעות תיבת הדו-שיח Project Structure, עוברים למודול של התלות שאותה רוצים לערוך, ולאחר מכן מעדכנים את השדה Requested Version (גרסה מבוקשת). לאחר שמירת השינויים האלה, קובץ ה-TOML מתעדכן בהתאם. שימו לב שאם גרסת התלות הוגדרה באמצעות משתנה, וכך הגרסה עודכנה באופן ישיר, הוא יחליף את המשתנה בערך שרשום בתוך הקוד. חשוב גם לשים לב להסרת תלות מקובץ build, בין אם משתמשים בפרויקט תיבת דו-שיח של מבנה, לא מסירה את התלות מהגרסה בקטלוג.

יחסי תלות מקטלוג גרסאות בתיבת הדו-שיח של מבנה הפרויקט

בעיות מוכרות ומגבלות

הבעיות הבאות הן בעיות ידועות או מגבלות ידועות בקטלוגים של גרסאות Gradle ב-Android Studio.

  • שגיאה בהדגשת הצהרות חלופיות של פלאגין בקובצי סקריפט Kotlin: הוספת הצהרת פלאגין בפורמט alias(libs.plugins.example), העורך מוסיף קו תחתון אדום מתחת לחלק libs. זו בעיה ידועה ב-Gradle מגרסה 8.0 ומטה, הבעיה תיפתר בגרסה עתידית של Gradle.

  • יש תמיכה ב-Android Studio רק בקטלוגים של גרסאות בפורמט TOML: כרגע תיבת דו-שיח של השלמת קוד ב-Android Studio, ניווט ומבנה הפרויקט התמיכה זמינה רק לקטלוגים של גרסאות שהוגדרו בקובץ ה-TOML הפורמט. עם זאת, עדיין אפשר להוסיף קטלוג גרסאות ישירות settings.gradle ולהשתמש ביחסי התלות שלו בפרויקט.

  • אין תמיכה בניווט לקובצי build של KTS: ניווט לתלות בקטלוג גרסאות באמצעות הקשה על Control+לחיצה עדיין אין תמיכה ב-Command + לחיצה ב-macOS) לקובצי build שנכתבו באמצעות סקריפט Kotlin.

  • האסיסטנט של Firebase מוסיף יחסי תלות ישירות בסקריפטים של build: Firebase Assistant מוסיפה יחסי תלות ישירות לסקריפטים של ה-build במקום דרך גרסה של קטלוגים.

  • 'חיפוש שימושים' פונקציונליות שלא נתמכת: חיפוש שימושים בקטלוג גרסאות בקובצי build אחרים עדיין אין תמיכה, בין אם קובץ ה-build ב-KTS או בגרוב. כלומר, שימוש במקשים Control+לחיצה (Command+לחיצה ב-macOS) להגדרת משתנה בגרסה לא מוביל לקובצי ה-build שבהם משתמשים במשתנה.

  • בתיבת הדו-שיח 'מבנה הפרויקט' ב-Android Studio מוצג מספר קטלוגים קבצים אם הם נמצאים בתיקיית הבסיס gradle, אבל לא מוצגים קטלוגים של גרסת build מורכבת. לדוגמה, אם יש לך שני קובצי קטלוג – אחד לאפליקציה ואחד build מורכב – בתיבת הדו-שיח 'מבנה הפרויקט' מוצג רק קובץ קטלוג האפליקציות. אפשר להשתמש ב-build מורכב, אבל צריך לערוך את קובץ ה-TOML שלו ישירות.

תובנות נוספות בנוגע ל-SDK: בעיות שקשורות למדיניות

ב-Android Studio מוצגות אזהרות לגבי שגיאות בקוד ב-build.gradle.kts וב-build.gradle בקבצים, תיבת דו-שיח בנושא מבנה הפרויקט לערכות SDK ציבוריות עם הפרות מדיניות של Play ב-Google Play SDK Index. עליך לעדכן כל של יחסי התלות שמפירים את המדיניות של Google Play, כי ההפרות האלה עלולות למנוע כדי שלא יתפרסמו ב-Google Play Console בעתיד. המדיניות תוסף לאזהרות על הפרות אזהרות על גרסאות מיושנות שמוצג על ידי Android Studio.

תמיכה בגרסת Android Studio compileSdk

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

שינויים בהתנהגות של איתור שגיאות בקוד (lint)

החל מפלאגין של Android Gradle מגרסה 8.3.0-alpha02, בזמן הרצת איתור שגיאות בקוד (lint) על במודול הראשי, משימות נפרדות של ניתוח שגיאות בקוד (lint) מריצים רכיבי המודול. הסיבה לשינוי הזה היא שיפור הביצועים. כדי לחזור להתנהגות הקודמת, צריך להגדיר android.experimental.lint.analysisPerComponent=false ב- קובץ gradle.properties.

כיווץ המשאב המדויק כברירת מחדל

כיווץ משאבים מדויק שמסיר רשומות שלא נמצאות בשימוש הקובץ resources.arsc מופעל כברירת מחדל, וכך מבטל את קובצי המשאבים שלא נמצאים בשימוש. כשהכיווץ מופעל, טבלת המשאבים מצטמצמת ורק רשומות res של תיקיות עם הפניה נכללות ב-APK.

כדי להשבית כיווץ משאבים מדויק צריך להגדיר android.enableNewResourceShrinker.preciseShrinking עד false ב שלך של הפרויקט ב-gradle.properties.