קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
פלאגין 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.
- הוצא משימוש ה-getter
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 כדי להאיץ את הבנייה המצטברת. הפלאגין של 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 שניתן ליצור ממנו אובייקט לצורך בדיקה, שהתוסף יוצר רק פעם אחת ומשתמש בו לבדיקות יחידה. כמה מודולים, כמו app ו-lib, משתמשים בו עכשיו. כדי ליצור אותו מחדש, מוחקים את $rootDir/build.
- השתנה העיבוד של משאבי Java, והוא מתבצע לפני משימות ההסתרה במקום במהלך האריזה של ה-APK. השינוי הזה מאפשר למשימות ההסתרה להתאים את משאבי Java אחרי הסתרת החבילות.
- תוקנה בעיה בשימוש בקוד Java Native Interface (JNI) בפלאגין של ספריית הניסויים.
- נוספה האפשרות להגדיר את גרסת הפלטפורמה בנפרד מהמאפיין
android:compileSdkVersion בתוסף של ספריית הניסויים.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-11-27 (שעון UTC).
[null,null,["עדכון אחרון: 2025-11-27 (שעון UTC)."],[],[]]