Android Gradle Plugin 2.1.0 (אפריל 2016)

2.1.3 (אוגוסט 2016)

לעדכון הזה נדרש Gradle מגרסה 2.14.1 ואילך. Gradle 2.14.1 כולל שיפורים בביצועים, תכונות חדשות ותיקון אבטחה חשוב. לפרטים נוספים, קראו את הערות המוצר של 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. מידע נוסף זמין במדריך N Preview.

    הערה: Instant Run לא פועל כרגע עם Jack, והוא יושבת כשמשתמשים בכלי הפיתוח החדש. צריך להשתמש ב-Jack רק אם אתם מפתחים עבור תצוגה מקדימה של N ורוצים להשתמש בתכונות השפה הנתמכות של Java 8.

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

    Groovy

    android {
      ...
      compileOptions {
        incremental false
      }
    }

    Kotlin

    android {
      ...
      compileOptions {
        incremental = false
      }
    }
  • הוספנו תמיכה ב-dexing-in-process, שמבצע dexing בתוך תהליך ה-build ולא בתהליכים חיצוניים נפרדים של מכונות וירטואליות. כך לא רק שגירסאות build מצטברות נוצרות מהר יותר, אלא גם גרסאות build מלאות. התכונה מופעלת כברירת מחדל בפרויקטים שבהם הגדרתם את הגודל המקסימלי של אשכול ה-Gradle ל-2048MB לפחות. כדי לעשות זאת, צריך לכלול את הקטע הבא בקובץ 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 ברמת המודול:

    Groovy

    android {
      ...
      dexOptions {
          dexInProcess false
      }
    }

    Kotlin

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