אתם יכולים להגדיר את ההתנהגות של Android Studio ושל כלי שורת הפקודה באמצעות הגדרת משתני סביבה. אחד ממשתני הסביבה הכי שימושיים להגדרה הוא ANDROID_HOME, שכלים רבים קוראים כדי לקבוע את ספריית ההתקנה של Android SDK.
כדי להריץ כלים משורת הפקודה בלי לכלול את הנתיב המלא לקובץ ההפעלה, צריך להגדיר את משתנה הסביבה של נתיב החיפוש של הפקודה כך שיכלול את ANDROID_HOME/tools, ANDROID_HOME/tools/bin ו-ANDROID_HOME/platform-tools.
איך מגדירים משתני סביבה
בדוגמאות הבאות אפשר לראות איך מגדירים משתני סביבה בחלון מסוף ובסקריפט מעטפת למערכות הפעלה שונות. הגדרות משתנים בחלונות טרמינל תקפות רק כל עוד החלון פתוח. ב-macOS וב-Linux, בכל פעם שמתחיל מעטפת חדשה, הגדרות המשתנים מוגדרות בסקריפטים של אתחול המעטפת. ב-Windows, אפשר להגדיר משתנים דרך הגדרות המערכת.
Windows: בחלון טרמינל, מקלידים את הפקודה הבאה:
set HTTP_PROXY=myserver:1981
אפשר גם להוסיף אותו דרך ממשק המשתמש של Windows. כדי לדעת איך עושים את זה, אפשר לעיין בתיעוד של גרסת Windows שלכם.
macOS ו-Linux: השיטה המדויקת להגדרת משתני סביבה תלויה במעטפת שבה אתם משתמשים. כדי לברר איזה סוג של מעטפת פועל, מקלידים את הפקודה הבאה:
echo $0
במעטפות כמו Gnu Bash או Zsh, משתנים מוגדרים באמצעות התחביר הבא:
export VARIABLE_NAME=<new-value>
במעטפות אחרות, כמו TCSH, מגדירים משתנים באמצעות התחביר הבא:
setenv VARIABLE_NAME <new-value>
אפשר להוסיף את הפקודות האלה לסקריפט האתחול של המעטפת כדי להגדיר את המשתנים בכל פעם שמריצים מופע חדש של המעטפת.
המיקום של סקריפט ההפעלה של המעטפת תלוי במעטפת שבה משתמשים.
ב-Gnu Bash, המיקום יכול להיות ~/.bash_profile. ב-Zsh, המיקום יכול להיות ~/.zprofile. ב-TCSH, המיקום יכול להיות
~/.cshrc. כדי לוודא, כדאי לעיין במסמכי העזרה של המעטפת שבה אתם משתמשים.
אפשר גם לעדכן את משתנה הסביבה PATH כך שיכלול את מיקומי הכלים.
ב-Gnu Bash או ב-Zsh:
export ANDROID_HOME=~/Library/Android/sdk export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools
וב-TCSH:
setenv ANDROID_HOME ~/Library/Android/sdk setenv PATH $PATH\:$ANDROID_HOME/tools\:$ANDROID_HOME/tools/bin\:$ANDROID_HOME/platform-tools
הפניה למשתנים
בטבלה הבאה מתוארים משתני סביבה נפוצים לכלים של Android SDK.
טבלה 1. משתני סביבה
| משתני סביבה של Android SDK | |
|---|---|
ANDROID_HOME |
ההגדרה קובעת את הנתיב לספריית ההתקנה של ה-SDK. אחרי שמגדירים את הערך, הוא בדרך כלל לא משתנה ויכול להיות משותף לכמה משתמשים באותה מכונה.
ANDROID_SDK_ROOT, שגם מצביע על ספריית ההתקנה של ה-SDK, הוצא משימוש. אם תמשיכו להשתמש בו, Android Studio והפלאגין של Android Gradle יבדקו שהמשתנים הישנים והחדשים עקביים.
|
ANDROID_USER_HOME |
מגדיר את הנתיב לספריית העדפות המשתמש עבור כלים שמהווים חלק מ-Android SDK.
ברירת המחדל היא $HOME/.android/.
חלק מהכלים הישנים יותר, כמו Android Studio מגרסה 4.3 ומטה, לא קוראים את הקובץ |
REPO_OS_OVERRIDE
|
מגדירים את המשתנה הזה לערך windows, macosx או linux כשמשתמשים ב-sdkmanager כדי להוריד חבילות למערכת הפעלה שונה מהמחשב הנוכחי.
|
| משתני סביבה להגדרת Android Studio | |
| משתני ההגדרה של Android Studio מכילים הגדרות שמתאימות אישית את המיקום של קובצי ההגדרה ושל ה-JDK. בזמן ההפעלה, Android Studio בודק את המשתנים האלה כדי למצוא הגדרות. מידע נוסף זמין במאמר הגדרת Android Studio. | |
STUDIO_VM_OPTIONS
|
מגדיר את המיקום של הקובץ studio.vmoptions.
הקובץ הזה מכיל הגדרות שמשפיעות על מאפייני הביצועים של המכונה הווירטואלית Java HotSpot. אפשר לגשת לקובץ הזה גם מתוך Android Studio. איך מתאימים אישית את האפשרויות של מכונה וירטואלית
|
STUDIO_PROPERTIES
|
מגדיר את המיקום של קובץ idea.properties. הקובץ הזה מאפשר לכם להתאים אישית את המאפיינים של סביבת הפיתוח המשולבת (IDE) של Android Studio, כמו הנתיב לתוספים שהמשתמש התקין וגודל הקובץ המקסימלי שנתמך על ידי סביבת הפיתוח המשולבת. איך מתאימים אישית את מאפייני ה-IDE
|
STUDIO_JDK
|
הגדרת המיקום של JDK שבו פועל Android Studio. כשמפעילים את סביבת הפיתוח המשולבת, היא בודקת את משתני הסביבה STUDIO_JDK, JDK_HOME ו-JAVA_HOME, לפי הסדר הזה.
|
STUDIO_GRADLE_JDK
|
מגדיר את המיקום של ה-JDK ש-Android Studio משתמש בו כדי להפעיל את Gradle daemon. כשמפעילים את ה-IDE, הוא בודק קודם את STUDIO_GRADLE_JDK. אם לא מוגדר STUDIO_GRADLE_JDK, סביבת הפיתוח המשולבת (IDE) משתמשת בערך שמוגדר בהגדרות של מבנה הפרויקט.
|
| משתני סביבה של אמולטור | |
כברירת מחדל, האמולטור שומר קובצי הגדרה ב-$HOME/.android/ ונתוני AVD ב-$HOME/.android/avd/. אפשר לשנות את ברירות המחדל באמצעות הגדרת משתני הסביבה הבאים.
הפקודה emulator -avd <avd_name> מחפשת בספרייה avd לפי סדר הערכים ב-$ANDROID_AVD_HOME, $ANDROID_USER_HOME/avd/ ו-$HOME/.android/avd/.
כדי לקבל עזרה לגבי משתני סביבה של אמולטור, מקלידים |
|
ANDROID_EMULATOR_HOME
|
מגדירה את הנתיב לספריית התצורה של האמולטור הספציפי למשתמש. ברירת המחדל היא $ANDROID_USER_HOME.
כלים ישנים יותר, כמו Android Studio מגרסה 4.3 ומטה, לא קוראים את
|
ANDROID_AVD_HOME
|
ההגדרה קובעת את הנתיב לספרייה שמכילה את כל הקבצים הספציפיים ל-AVD, שכוללים בעיקר תמונות דיסק גדולות מאוד. מיקום ברירת המחדל הוא $ANDROID_EMULATOR_HOME/avd/. כדאי לציין מיקום חדש אם:
אין מספיק מקום פנוי בכונן במיקום ברירת המחדל.
|
| כשמפעילים את אמולטור Android, הוא שולח שאילתות למשתני הסביבה הבאים: | |
ANDROID_LOG_TAGS
|
מידע נוסף זמין במאמר בנושא ANDROID_LOG_TAGS.
|
HTTP_PROXY
|
מכיל את הגדרת ה-proxy ל-HTTP/HTTPS עבור שרת proxy גלובלי ל-HTTP. משתמשים בנקודתיים (:) כמפריד בין המארח לבין היציאה. לדוגמה, זהה להגדרה של הארגומנט
|
ANDROID_VERBOSE
|
מידע נוסף זמין במאמר בנושא ANDROID_VERBOSE.
|
ANDROID_HOME
|
מידע נוסף זמין במאמר בנושא ANDROID_HOME.
|
ANDROID_EMULATOR_USE_SYSTEM_LIBS
|
הוא מכיל את הערך 0 (ברירת מחדל) או 1. ערך של 1 מציין שהמערכת משתמשת בקובץ libstdc++.so במקום בקובץ שמגיע עם האמולטור.
מגדירים את משתנה הסביבה הזה רק אם האמולטור לא מופעל במערכת Linux בגלל בעיה בספריית המערכת. לדוגמה, חלק מספריות של מנהלי התקנים של Linux Radeon GL
דורשות קובץ libstdc++.so עדכני יותר.
|
| אודיו באמולטור מהיר (QEMU) | |
QEMU_AUDIO_DRV
QEMU_AUDIO_OUT_DRV
QEMU_AUDIO_IN_DRV
|
ב-Linux, אפשר לשנות את קצה העורפי של האודיו שמוגדר כברירת מחדל באמולטור על ידי הגדרת משתנה הסביבה QEMU_AUDIO_DRV לאחד מהערכים הבאים:
set QEMU_AUDIO_DRV=alsa
אפשר גם להשתמש בשרתי קצה עורפיים שונים לקלט אודיו ולפלט אודיו. לשם כך, בוחרים באחד מהערכים של QEMU עבור משתני הסביבה set QEMU_AUDIO_OUT=esd set QEMU_AUDIO_IN=oss
אם רוצים להשבית את התמיכה באודיו, משתמשים באפשרות
|
| משתני סביבה של adb | |
ANDROID_SERIAL
|
משתמשים במשתנה הזה כדי לספק מספר סידורי של אמולטור, כמו emulator-5555, לפקודה adb. אם מגדירים את המשתנה הזה אבל משתמשים באפשרות -s
כדי לציין מספר סידורי משורת הפקודה, הקלט משורת הפקודה מבטל את הערך ב-ANDROID_SERIAL.
בדוגמה הבאה מוגדר set ANDROID_SERIAL=emulator-555 adb install helloWorld.apk |
| משתני סביבה של adb logcat | |
ANDROID_LOG_TAGS
|
משתמשים במשתנה הסביבה הזה כדי להגדיר ביטוי מסנן שמוגדר כברירת מחדל כשמריצים את adb logcat ממחשב הפיתוח. לדוגמה:
set ביטוי הסינון משתמש באותו תחביר כמו האפשרות מידע נוסף ודוגמאות זמינים במאמר בנושא סינון של פלט יומן. |
ADB_TRACE
|
רשימה מופרדת בפסיקים של פרטי ניפוי הבאגים שרוצים לרשום ביומן.
הערכים האפשריים הם: all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport ו-jdwp.
כדי להציג את יומני set ADB_TRACE=all adb logcat |
ANDROID_VERBOSE
|
רשימה מופרדת בפסיקים של אפשרויות פלט מפורט (תגי ניפוי באגים) שמשמשות את האמולטור. בדוגמה הבאה מוצג ANDROID_VERBOSE
שמוגדר באמצעות תגי הניפוי באגים debug-socket ו-debug-radio:
set ANDROID_VERBOSE=socket,radio זה כמו לציין את הארגומנטים
המערכת מתעלמת מתגי ניפוי באגים שלא נתמכים. מידע נוסף על תגי ניפוי באגים זמין במאמר |