sdkmanager
הוא כלי בשורת הפקודה שמאפשר להציג, להתקין, לעדכן ולהסיר חבילות של Android SDK. אם אתם משתמשים ב-Android Studio, אין צורך להשתמש בכלי הזה. במקום זאת, תוכלו לנהל את חבילות ה-SDK מתוך סביבת הפיתוח המשולבת.
הכלי sdkmanager
מופיע בחבילה Android SDK Command-Line Tools.
כדי להשתמש ב-SDK Manager כדי להתקין גרסה של כלי שורת הפקודה:
- מורידים את החבילה האחרונה של 'כלים לשורת הפקודה בלבד' מדף ההורדות של Android Studio ומבצעים את הפתיחה של החבילה.
- מעבירים את התיקייה
cmdline-tools
ללא הארכיון לתיקייה חדשה לבחירתכם, למשל android_sdk. הספרייה החדשה הזו היא ספריית Android SDK. - בספרייה
cmdline-tools
ללא דחיסה, יוצרים ספריית משנה בשםlatest
. - מעבירים את התוכן של ספריית
cmdline-tools
המקורית, כולל הספרייהlib
, הספרייהbin
, הקובץNOTICE.txt
והקובץsource.properties
, לספרייה החדשהlatest
. עכשיו אפשר להשתמש בכלים של שורת הפקודה מהמיקום הזה. (אופציונלי) כדי להתקין גרסה קודמת של כלי שורת הפקודה, מריצים את הפקודה הבאה:
android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
מחליפים אתversion
בגרסה שרוצים להתקין, לדוגמה5.0
.
שימוש
אפשר להשתמש ב-sdkmanager
כדי להציג את החבילות המותקנות וזמינות, להתקין חבילות ולעדכן חבילות. מידע נוסף זמין בסעיפים הבאים.
הצגת רשימה של החבילות המותקנות וזמינות
כדי להציג רשימה של חבילות מותקנות וזמינות, יש להשתמש בתחביר הבא:
sdkmanager --list [options] \ [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)
משתמשים באפשרות channel
כדי לכלול חבילה מערוץ עד channel_id
, כולל. לדוגמה, אפשר לציין את ערוץ ה-canary כדי לקבל רשימה של חבילות מכל הערוצים.
התקנת חבילות
כדי להתקין חבילות, משתמשים בסינטקס הבא:
sdkmanager packages [options]
הארגומנט packages הוא נתיב בסגנון SDK, כפי שמוצג בפקודה --list
, מוקף במירכאות. לדוגמה, "build-tools;34.0.0"
או "platforms;android-33"
.
אפשר להעביר כמה נתיבים של חבילות, מופרדים ברווחים, אבל כל אחד מהם צריך להיות מוקף בסוגריים כפולים משלו. לדוגמה, כך מתקינים את כלי הפלטפורמה ואת כלי ה-SDK העדכניים ביותר לרמת API 33:
sdkmanager "platform-tools" "platforms;android-33"
לחלופין, אפשר להעביר קובץ טקסט שמציין את כל החבילות:
sdkmanager --package_file=package_file [options]
הארגומנט package_file הוא המיקום של קובץ טקסט שבו כל שורה היא נתיב בסגנון SDK של חבילת התקנה (ללא מירכאות).
כדי להסיר את התוסף, מוסיפים את הדגל --uninstall
:
sdkmanager --uninstall packages [options] sdkmanager --uninstall --package_file=package_file [options]
כדי להתקין את CMake או את NDK, משתמשים בתחביר הבא:
sdkmanager --install ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"] [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)
לדוגמה, תוכלו להשתמש בפקודה הבאה כדי להתקין את גרסת ה-NDK שצוינה בלי קשר לערוץ שבו היא נמצאת כרגע:
sdkmanager --install "ndk;21.3.6528147" --channel=3 // Install the NDK from the canary channel (or below) sdkmanager --install "cmake;10.24988404" // Install a specific version of CMake
עדכון כל החבילות המותקנות
כדי לעדכן את כל החבילות המותקנות, משתמשים בתחביר הבא:
sdkmanager --update [options]
אישור רישיונות
אתם צריכים לאשר את הרישיון הנדרש לכל חבילה שהתקנתם. השלב הזה מתרחש במהלך תהליך ההתקנה כשמתקינים חבילות מתוך Android Studio.
אם לא התקנתם את Android Studio, או אם אתם משתמשים בשרת CI או במכשיר Linux אחר ללא ממשק משתמש גרפי, עליכם לבצע את הפעולות הבאות בשורת הפקודה:
sdkmanager --licenses
הפעולה הזו תבקש מכם לאשר את כל הרישיונות שעדיין לא אושרו.
אפשרויות
בטבלה הבאה מפורטות האפשרויות הזמינות לפקודות שמפורטות בקטע הקודם:
אפשרות | תיאור |
---|---|
--sdk_root=path
|
משתמשים בנתיב ה-SDK שצוין במקום ב-SDK שמכיל את הכלי הזה. |
--channel=channel_id
|
יש לכלול חבילות בערוצים עד וכולל channel_id. הערוצים הזמינים הם:
|
--include_obsolete
|
צריך לכלול חבילות לא תקפות ברשימת החבילות או בעדכוני החבילות.
לשימוש עם --list ו---update בלבד.
|
--no_https
|
לאלץ את כל החיבורים להשתמש ב-HTTP במקום ב-HTTPS. |
--newer
|
בעזרת --list , מוצגות רק חבילות חדשות או חבילות שניתן לעדכן.
|
--verbose
|
מצב פלט מפורט. מודפסות שגיאות, אזהרות והודעות מידע. |
--proxy={http | socks}
|
מתחברים דרך שרת proxy מהסוג הנתון: http לפרוטוקולים
ברמה גבוהה כמו HTTP או FTP, או
socks לשרת proxy מסוג SOCKS (V4 או V5).
|
--proxy_host={IP_address | DNS_address}
|
כתובת ה-IP או ה-DNS של שרת ה-proxy שבו צריך להשתמש. |
--proxy_port=port_number
|
מספר היציאה של שרת ה-proxy שאליו רוצים להתחבר. |