קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
פלאגין Android ל-Gradle, גרסה 1.5.0 (נובמבר 2015)
- תלויות:
|
גרסת מינימום |
גרסת ברירת המחדל |
הערות |
Gradle |
2.2.1 |
2.2.1 |
יש מידע נוסף במאמר בנושא עדכון Gradle. |
SDK Build Tools |
21.1.1 |
21.1.1 |
התקנה או הגדרה של SDK Build Tools. |
- הערות כלליות:
-
- שילבנו את הפלאגין Data Binding בפלאגין Android ל-Gradle. כדי להפעיל אותו, מוסיפים את הקוד הבא לכל קובץ
build.gradle
לכל פרויקט שמשתמש בתוסף:
android {
dataBinding {
enabled = true
}
}
android {
dataBinding {
enabled = true
}
}
- הוספנו Transform API חדש
כדי לאפשר לתוספים של צד שלישי לבצע מניפולציות בקובצי
.class
שעברו קומפילציה לפני שהם
מומרים לקובצי .dex
. ממשק Transform API מפשט את ההחדרה של מניפולציות מותאמות אישית של מחלקות, ומציע יותר גמישות לגבי מה שאפשר לשנות. כדי להוסיף טרנספורמציה לבנייה, יוצרים מחלקה חדשה שמיישמת אחד מממשקי Transform
, ורושמים אותה ב-android.registerTransform(theTransform)
או ב-android.registerTransform(theTransform, dependencies)
. אין צורך לקשר בין המשימות. חשוב לדעת את הדברים הבאים על Transform API:
- טרנספורמציה יכולה לחול על אחד או יותר מהרכיבים הבאים: הפרויקט הנוכחי, פרויקטים משניים וספריות חיצוניות.
- צריך לרשום טרנספורמציה באופן גלובלי, כדי שהיא תחול על כל הווריאציות.
- עיבוד פנימי של קוד, באמצעות Java Code Coverage Library (JaCoCo), ProGuard ו-MultiDex, מתבצע עכשיו באמצעות Transform API. עם זאת, ערכת הכלים Java Android Compiler Kit (Jack) לא משתמשת ב-API הזה: רק בנתיב הקוד
javac/dx
.
- Gradle מבצע את ההמרות בסדר הזה: JaCoCo, פלאגינים של צד שלישי, ProGuard.
סדר ההפעלה של תוספים של צד שלישי תואם לסדר שבו התוספים של הצד השלישי מוסיפים את הטרנספורמציות. מפתחים של תוספים של צד שלישי לא יכולים לשלוט בסדר ההפעלה של הטרנספורמציות באמצעות API.
- הוצא משימוש מאחזר
dex
מהמחלקה ApplicationVariant
.
אי אפשר יותר לגשת למשימה Dex
דרך Variant API כי עכשיו היא מתבצעת באמצעות טרנספורמציה. אין כרגע תחליף לשליטה בתהליך dex.
- תוקנה תמיכה מצטברת בנכסים.
- שיפרנו את התמיכה ב-MultiDex והפכנו אותה לזמינה לפרויקטים של בדיקות. בנוסף, הבדיקות כוללות עכשיו באופן אוטומטי את התלות
com.android.support:multidex-instrumentation
.
- נוספה האפשרות לגרום לתקלה ב-Gradle build ולדווח על הסיבה הבסיסית לשגיאה כש-Gradle build מפעיל משימות אסינכרוניות ויש תקלה בתהליך של worker.
- נוספה תמיכה בהגדרת Application Binary Interface (ABI) ספציפי בווריאציות
שמכילות כמה ממשקי ABI.
- הוספנו תמיכה ברשימה של מספרים סידוריים של מכשירים שמופרדים בפסיקים עבור משתנה הסביבה
ANDROID_SERIAL
כשמתקינים או מריצים בדיקות.
- תוקנה בעיה שגרמה לכשל בהתקנה במכשירים עם Android 5.0 (API ברמה 20) ומעלה
כשהשם של קובץ ה-APK כולל רווח.
- תוקנו בעיות שונות שקשורות לפלט השגיאות של Android Asset Packaging Tool (AAPT).
- הוספנו תמיכה ב-JaCoCo incremental instrumentation כדי להאיץ את הבנייה המצטברת. הפלאגין של Android ל-Gradle מפעיל עכשיו ישירות את הכלי JaCoCo instrumenter. כדי לכפות שימוש בגרסה חדשה יותר של הכלי JaCoCo instrumenter, צריך להוסיף אותה כתלות בסקריפט build.
- תוקנה התמיכה ב-JaCoCo כך שהיא מתעלמת מקבצים שהם לא מחלקות.
- הוספנו תמיכה ב-vector drawable כדי ליצור קובצי PNG בזמן הבנייה לצורך תאימות לאחור.
התוסף Android ל-Gradle יוצר קובצי PNG לכל ציור וקטורי שנמצא בספריית משאבים שלא צוינה בה גרסת API, או שצוין בה מאפיין
android:minSdkVersion
בערך 20 ומטה באלמנט <uses-sdk>
במניפסט של האפליקציה. אפשר להגדיר את הצפיפות של קובצי PNG באמצעות המאפיין generatedDensities
בקטעים defaultConfig
או productFlavor
של קובץ build.gradle
.
- נוסף שיתוף של
android.jar
שניתן ליצור ממנו mock, שהתוסף יוצר רק פעם אחת ומשתמש בו לבדיקות יחידה. כמה מודולים, כמו app
ו-lib
, משתפים עכשיו את הנתונים. כדי ליצור אותו מחדש, מוחקים את $rootDir/build
.
- השתנה העיבוד של משאבי Java, והוא מתבצע לפני משימות ההסתרה במקום במהלך האריזה של ה-APK. השינוי הזה מאפשר למשימות ההסתרה להתאים את משאבי Java אחרי הסתרת החבילות.
- תוקנה בעיה בשימוש בקוד Java Native Interface (JNI) בפלאגין של ספריית הניסויים.
- נוספה האפשרות להגדיר את גרסת הפלטפורמה בנפרד מהמאפיין
android:compileSdkVersion
בתוסף של ספריית הניסויים.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-10-17 (שעון UTC).
[null,null,["עדכון אחרון: 2025-10-17 (שעון UTC)."],[],[]]