פלאגין של Android Gradle 2.1.0 (אפריל 2016)

‫2.1.3 (אוגוסט 2016)

העדכון הזה דורש את Gradle בגרסה 2.14.1 ואילך. גרסה 2.14.1 של Gradle כוללת שיפורים בביצועים, תכונות חדשות ותיקון אבטחה חשוב. פרטים נוספים זמינים בנתוני הגרסה של Gradle.

יחסי תלות:
גרסת המינימום גרסת ברירת המחדל הערות
Gradle 2.10 2.10 יש מידע נוסף במאמר בנושא עדכון Gradle.
SDK Build Tools 23.0.2 23.0.2 התקנה או הגדרה של SDK Build Tools.
הפרטים החדשים:
  • הוספנו תמיכה בגרסת N Developer Preview, ב-JDK 8 ובתכונות השפה של Java 8 באמצעות Jack toolchain. מידע נוסף זמין במדריך לגרסת טרום-השקה (Preview) של N.

    הערה: Instant Run לא פועל עם Jack ויושבת בזמן השימוש ב-toolchain החדש. צריך להשתמש ב-Jack רק אם אתם מפתחים לגרסת טרום-השקה (Preview) של N ורוצים להשתמש בתכונות הנתמכות של שפת Java 8.

  • נוספה תמיכה כברירת מחדל בהידור מצטבר של Java כדי לצמצם את משך הזמן לקימפול במהלך הפיתוח. כדי לעשות את זה, הוא מקמפל מחדש רק את החלקים במקור שהשתנו או שצריך לקמפל מחדש. כדי להשבית את התכונה הזו, מוסיפים את הקוד הבא לקובץ build.gradle ברמת המודול:

    מגניב

    android {
      ...
      compileOptions {
        incremental false
      }
    }

    Kotlin

    android {
      ...
      compileOptions {
        incremental = false
      }
    }
  • הוספנו תמיכה ב-dexing-in-process, שמבצע dexing בתהליך ה-build ולא בתהליכי VM חיצוניים נפרדים. כך לא רק שהבנייה המצטברת מהירה יותר, אלא גם הבנייה המלאה מהירה יותר. התכונה מופעלת כברירת מחדל בפרויקטים שבהם הגודל המקסימלי של ה-heap של ה-daemon של Gradle הוא לפחות 2,048MB. כדי לעשות את זה, צריך להוסיף את הקוד הבא לקובץ gradle.properties של הפרויקט:

    ```none org.gradle.jvmargs = -Xmx2048m ```

    אם הגדרתם ערך ל- javaMaxHeapSize בקובץ build.gradle ברמת המודול, אתם צריכים להגדיר את org.gradle.jvmargs לערך של javaMaxHeapSize + 1024MB. לדוגמה, אם הגדרתם את javaMaxHeapSize ל-"2048m", אתם צריכים להוסיף את הקוד הבא לקובץ gradle.properties של הפרויקט:

    ```none org.gradle.jvmargs = -Xmx3072m ```

    כדי להשבית את dexing-in-process, מוסיפים את הקוד הבא לקובץ build.gradle ברמת המודול:

    מגניב

    android {
      ...
      dexOptions {
          dexInProcess false
      }
    }

    Kotlin

    android {
      ...
      dexOptions {
          dexInProcess = false
      }
    }