הגדרה של ספריית התמיכה

הערה: בגרסת Android 9.0 (רמת API 28) יש גרסה חדשה של ספריית התמיכה שנקראת AndroidX, שהוא חלק מ-Jetpack. ספריית AndroidX שכולל את ספריית התמיכה הקיימת וגם את רכיבי Jetpack העדכניים ביותר.

אפשר להמשיך להשתמש בספריית התמיכה. פריטי מידע היסטוריים (גרסאות 27 ומטה, ונארזים בפורמט android.support.*) ימשיכו להיות זמינים ב-Google Maven. אבל כל הפיתוח של הספריות החדשות יתבצע בספרייה AndroidX.

מומלץ להשתמש בספריות של AndroidX בכל הפרויקטים החדשים. עוד משחקים שכדאי להכיר להעביר פרויקטים קיימים גם ל-AndroidX.

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

במסמך הזה מוסבר איך להוריד את החבילה של ספריית התמיכה ולהוסיף ספריות לסביבת הפיתוח שלכם.

ספריות התמיכה זמינות עכשיו דרך Maven של Google של מאגר הנתונים. אנחנו לא תומכים יותר בהורדת ספריות דרך ה-SDK והפונקציונליות הזו תוסר בקרוב.

בחירת ספריות תמיכה

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

הוספת ספריות תמיכה

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

כדי להוסיף ספריית תמיכה לפרויקט האפליקציה:

  1. הכללת מאגר Maven של Google בפרויקט קובץ settings.gradle.
    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            google()
    
            // If you're using a version of Gradle lower than 4.1, you must
            // instead use:
            //
            // maven {
            //     url 'https://maven.google.com'
            // }
        }
    }
    
  2. עבור כל מודול שבו רוצים להשתמש בספריית תמיכה, מוסיפים את הספרייה בלוק dependencies בקובץ build.gradle של המודול. עבור לדוגמה, כדי להוסיף את ספריית v4 Core-utils, צריך להוסיף את הפרטים הבאים:
    dependencies {
        ...
        implementation "com.android.support:support-core-utils:28.0.0"
    }
    

זהירות: שימוש ביחסי תלות דינמיים (לדוגמה, palette-v7:23.0.+) עלול לגרום לעדכוני גרסה לא צפויים חוסר תאימות של רגרסיה. מומלץ לציין במפורש גרסת הספרייה (לדוגמה, palette-v7:28.0.0).

שימוש בממשקי API של ספריית התמיכה

מחלקות תמיכה של ספריות שמספקות תמיכה בממשקי API קיימים של framework כוללים בדרך כלל זהה לשם של מחלקה של framework, אבל הן נמצאות בחבילות המחלקה android.support, או כוללים סיומת *Compat.

זהירות: כשמשתמשים בכיתות מספריית התמיכה, חשוב לוודא שמייבאים של הכיתה מהחבילה המתאימה. לדוגמה, כשמחילים את המאפיין ActionBar class:

  • android.support.v7.app.ActionBar כשמשתמשים בספריית התמיכה.
  • android.app.ActionBar כשמפתחים רק לרמת API 11 ומעלה.

הערה: אחרי שכוללים את ספריית התמיכה בפרויקט שלכם, אנחנו מומלץ מאוד לכווץ, לבצע ערפול קוד (obfuscation) ולבצע אופטימיזציה של האפליקציה להפצה. בנוסף להגנה על קוד המקור באמצעות ערפול קוד (obfuscation), כיווץ מסירה את הכיתות שלא בשימוש מכל הספריות שכללתם באפליקציה, ושומרת על גודל ההורדה של האפליקציה שלך קטן ככל האפשר.

הדרכה נוספת לשימוש בתכונות מסוימות של ספריית התמיכה זמינה למפתחים של Android training classes, מדריכים ודוגמיות. מידע נוסף על המחלקות והשיטות הספציפיות של ספריית התמיכה זמין בכתובת החבילות android.support בהפניה ל-API.

שינויים בהצהרת המניפסט

אם רוצים להגדיל את התאימות של האפליקציה הקיימת לגרסה קודמת של Android API עם ספריית התמיכה, אל תשכחו לעדכן את . באופן ספציפי, עליך לעדכן את android:minSdkVersion של הרכיב <uses-sdk> במניפסט למספר הגרסה החדש והנמוך יותר, כמו מוצגת למטה:

  <uses-sdk
      android:minSdkVersion="14"
      android:targetSdkVersion="23" />

הגדרת המניפסט מציינת ל-Google Play שניתן להתקין את האפליקציה שלך במכשירים עם Android 4.0 (רמת API 14) ואילך.

אם משתמשים בקובצי build של Gradle, ההגדרה minSdkVersion בקובץ ה-build משנה את הגדרות המניפסט.

plugins {
  id 'com.android.application'
}

android {
    ...

    defaultConfig {
        minSdkVersion 16
        ...
    }
    ...
}

במקרה כזה, ההגדרה של קובץ ה-build מנחה את Google Play שגרסת ברירת המחדל של ה-build של ניתן להתקין את האפליקציה במכשירים עם Android בגרסה 4.1 (רמת API 16) ומעלה. לקבלת מידע נוסף מידע על וריאציות build סקירה כללית של מערכת Build

הערה: אם שולחים כמה ספריות תמיכה, גרסת ה-SDK המינימלית חייבת להיות גרסת הגבוהה ביותר שנדרשת על ידי אחד או יותר מהגרסאות של הספריות שצוינו. לדוגמה, אם האפליקציה כוללת את ספריית התמיכה בהעדפות v14 וגם את ספריית Leanback v17, המינימום שלך גרסת ה-SDK חייבת להיות מגרסה 17 ואילך.