קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
פלאגין 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
getter מהמחלקה 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
שניתן ליצור ממנו אובייקט דמה, שהתוסף יוצר רק פעם אחת ומשתמש בו לבדיקות יחידה. כמה מודולים, כמו app
ו-lib
, משתפים עכשיו את הנתונים. כדי ליצור אותו מחדש, צריך למחוק את $rootDir/build
.
- השתנה העיבוד של משאבי Java, והוא מתבצע לפני משימות ההסתרה במקום במהלך האריזה של ה-APK. השינוי הזה מאפשר למשימות ההסתרה להתאים את משאבי Java אחרי הסתרת החבילות.
- תוקנה בעיה בשימוש בקוד Java Native Interface (JNI) בפלאגין של ספריית הניסויים.
- נוספה האפשרות להגדיר את גרסת הפלטפורמה בנפרד מהמאפיין
android:compileSdkVersion
בתוסף של ספריית הניסויים.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-07-27 (שעון UTC)."],[],[]]