הגדרת Android Studio

ב-Android Studio יש אשפים ותבניות שמאמתים את דרישות המערכת, כמו ערכת הכלים לפיתוח Java‏ (JDK) וזיכרון RAM זמין, ומגדירים הגדרות ברירת מחדל, כמו הדמיה של מכשיר וירטואלי של Android‏ (AVD) שמותאמת לברירת מחדל ותמונות מערכת מעודכנות. במסמך הזה מתוארות הגדרות נוספות שאפשר לשנות כדי להתאים אישית את השימוש ב-Android Studio.

ב-Android Studio יש גישה לשני קובצי תצורה דרך התפריט Help:

  • studio.vmoptions: התאמה אישית של האפשרויות של מכונה וירטואלית של Java‏ (JVM) ב-Android Studio, כמו גודל האשפה וגודל המטמון. הערה: במכונות Linux, ייתכן שהשם של הקובץ יהיה studio64.vmoptions, בהתאם לגרסה של Android Studio.
  • idea.properties: התאמה אישית של מאפייני Android Studio, כמו הנתיב של תיקיית הפלאגינים או הגודל המקסימלי של הקובץ הנתמך.

למידע ספציפי על הגדרה ושימוש במכשיר ובמכונה הווירטואלית, תוכלו לעיין בנושאים הבאים:

איתור קובצי התצורה

שני קובצי התצורה מאוחסנים בספריית התצורה של Android Studio. במאמר ספריות מוסבר איך למצוא את ספריית התצורה.

אפשר להשתמש במשתני הסביבה הבאים כדי להפנות לקובצי שינוי ספציפיים במקום אחר:

  • STUDIO_VM_OPTIONS: מגדירים את השם והמיקום של הקובץ .vmoptions.
  • STUDIO_PROPERTIES: מגדירים את השם והמיקום של הקובץ .properties.

תוכלו להגדיר אילו JDKs ישמשו אתכם במאמר גרסאות Java ב-builds של Android.

התאמה אישית של אפשרויות ה-VM

הקובץ studio.vmoptions מאפשר להתאים אישית את האפשרויות של JVM ב-Android Studio. כדי לשפר את הביצועים של Android Studio, האפשרות הנפוצה ביותר היא לשנות את גודל האשפה המקסימלי, אבל אפשר גם להשתמש בקובץ studio.vmoptions כדי לשנות הגדרות ברירת מחדל אחרות, כמו גודל האשפה הראשוני, גודל המטמון והמתגים של איסוף האשפה ב-Java.

כדי ליצור קובץ studio.vmoptions חדש או לפתוח קובץ קיים, פועלים לפי השלבים הבאים:

  1. לוחצים על Help (עזרה) > Edit Custom VM Options (עריכת אפשרויות VM בהתאמה אישית). אם זו הפעם הראשונה שאתם עורכים את אפשרויות ה-VM ב-Android Studio, תופיע בקשה ב-IDE ליצור קובץ studio.vmoptions חדש. לוחצים על Create כדי ליצור את הקובץ.
  2. הקובץ studio.vmoptions נפתח בחלון העריכה של Android Studio. עורכים את הקובץ כדי להוסיף את האפשרויות המותאמות אישית של המכונה הווירטואלית. רשימה מלאה של אפשרויות JVM שניתן להתאים אישית מופיעה בדף Java HotSpot VM Options של Oracle.

קובץ studio.vmoptions שיצרתם יתווסף לקובץ studio.vmoptions שמוגדר כברירת מחדל, שנמצא בספרייה bin/ בתיקיית ההתקנה של Android Studio.

אל תערכו ישירות את הקובץ studio.vmoptions שנמצא בתיקיית התוכנה של Android Studio. אפשר לגשת לקובץ כדי להציג את אפשרויות ברירת המחדל של מכונות וירטואליות ב-Android Studio, אבל עריכה של הקובץ studio.vmoptions שלכם בלבד תעזור לכם לוודא שלא תשנו את הגדרות ברירת המחדל החשובות של Android Studio. לכן, בקובץ studio.vmoptions, צריך לשנות רק את המאפיינים שחשובים לכם, ולאפשר ל-Android Studio להמשיך להשתמש בערכים שמוגדרים כברירת מחדל לכל המאפיינים שלא שיניתם.

גודל הערימה המקסימלי

כברירת מחדל, הגודל המקסימלי של אשכול ב-Android Studio הוא 1,280MB. אם אתם עובדים על פרויקט גדול או שיש לכם הרבה זיכרון RAM במערכת, תוכלו לשפר את הביצועים על ידי הגדלת גודל האוסף המקסימלי של תהליכים ב-Android Studio, כמו IDE הליבה, הדימון של Gradle והדימון של Kotlin.

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

הגדרות הזיכרון, שמאפשרות להגדיר את נפח ה-RAM המקסימלי של תהליכי Android Studio.

איור 1. התראה על הגדרות מומלצות של הזיכרון.

אם אתם משתמשים במערכת של 64 ביט עם זיכרון RAM בנפח 5GB לפחות, תוכלו גם לשנות את גדלי האשכולות בפרויקט באופן ידני. לשם כך, בצע את הצעדים הבאים:

  1. לוחצים על File (קובץ) > Settings (הגדרות) בסרגל התפריטים (Android Studio > Preferences (העדפות) ב-macOS).
  2. לוחצים על מראה והתנהגות > הגדרות מערכת > הגדרות זיכרון.

    הגדרות הזיכרון, שמאפשרות להגדיר את נפח ה-RAM המקסימלי של תהליכי Android Studio.

    איור 2. מגדירים את נפח ה-RAM המקסימלי בהגדרות הזיכרון.

  3. משנים את הגדלים של אשכול הנתונים.

  4. לוחצים על אישור.

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

ייצוא וייבוא של הגדרות IDE

אפשר לייצא קובץ Settings.jar שמכיל את כל ההגדרות המועדפות של סביבת הפיתוח המשולבת לפרויקט, או קבוצת משנה שלהן. לאחר מכן תוכלו לייבא את קובץ ה-JAR לפרויקטים אחרים ו/או להפוך אותו לזמין לקולגות כדי שייבאו אותו לפרויקטים שלהם.

מידע נוסף זמין במאמר שיתוף ההגדרות של סביבת הפיתוח המשולבת ב-IntelliJ IDEA.

התאמה אישית של מאפייני סביבת הפיתוח המשולבת

הקובץ idea.properties מאפשר להתאים אישית את מאפייני ה-IDE של Android Studio, כמו הנתיב ל-plugins שהמשתמשים התקינו והגודל המקסימלי של הקובץ שנתמך על ידי ה-IDE. קובץ idea.properties ימוזג עם נכסי ברירת המחדל של סביבת הפיתוח המשולבת, כך שתוכלו לציין רק את נכסי ההחרגה.

כדי ליצור קובץ idea.properties חדש או לפתוח קובץ קיים, פועלים לפי השלבים הבאים:

  1. לוחצים על עזרה > עריכת מאפיינים מותאמים אישית. אם זו הפעם הראשונה שאתם עורכים את מאפייני ה-IDE, תופיע ב-Android Studio בקשה ליצור קובץ idea.properties חדש. לוחצים על כן כדי ליצור את הקובץ.
  2. הקובץ idea.properties נפתח בחלון העריכה של Android Studio. עורכים את הקובץ כדי להוסיף את מאפייני ה-IDE המותאמים אישית.

קובץ ה-idea.properties הבא כולל מאפייני IDE נפוצים שאפשר להתאים אישית. רשימה מלאה של המאפיינים מופיעה במאמר בנושא קובץ idea.properties ל-IntelliJ IDEA.

#---------------------------------------------------------------------
# Uncomment this option if you want to customize path to user installed plugins folder. Make sure
# you're using forward slashes.
#---------------------------------------------------------------------
# idea.plugins.path=${idea.config.path}/plugins
#---------------------------------------------------------------------
# Maximum file size (kilobytes) IDE should provide code assistance for.
# The larger the file is, the slower its editor works and higher overall system memory requirements are
# if code assistance is enabled. Remove this property or set to very large number if you need
# code assistance for any files available regardless their size.
#---------------------------------------------------------------------
idea.max.intellisense.filesize=2500
#---------------------------------------------------------------------
# This option controls console cyclic buffer: keeps the console output size not higher than the
# specified buffer size (Kb). Older lines are deleted. In order to disable cycle buffer use
# idea.cycle.buffer.size=disabled
#---------------------------------------------------------------------
idea.cycle.buffer.size=1024
#---------------------------------------------------------------------
# Configure if a special launcher should be used when running processes from within IDE.
# Using Launcher enables "soft exit" and "thread dump" features.
#---------------------------------------------------------------------
idea.no.launcher=false
#---------------------------------------------------------------------
# To avoid too long classpath
#---------------------------------------------------------------------
idea.dynamic.classpath=false
#---------------------------------------------------------------------
# There are two possible values of idea.popup.weight property: "heavy" and "medium".
# If you have WM configured as "Focus follows mouse with Auto Raise", then you have to
# set this property to "medium". It prevents problems with popup menus on some
# configurations.
#---------------------------------------------------------------------
idea.popup.weight=heavy
#---------------------------------------------------------------------
# Use default anti-aliasing in system, i.e. override value of
# "Settings|Editor|Appearance|Use anti-aliased font" option. May be useful when using Windows
# Remote Desktop Connection for instance.
#---------------------------------------------------------------------
idea.use.default.antialiasing.in.editor=false
#---------------------------------------------------------------------
# Disabling this property may lead to visual glitches like blinking and fail to repaint
# on certain display adapter cards.
#---------------------------------------------------------------------
sun.java2d.noddraw=true
#---------------------------------------------------------------------
# Removing this property may lead to editor performance degradation under Windows.
#---------------------------------------------------------------------
sun.java2d.d3d=false
#---------------------------------------------------------------------
# Workaround for slow scrolling in JDK6.
#---------------------------------------------------------------------
swing.bufferPerWindow=false
#---------------------------------------------------------------------
# Removing this property may lead to editor performance degradation under X Window.
#---------------------------------------------------------------------
sun.java2d.pmoffscreen=false
#---------------------------------------------------------------------
# Workaround to avoid long hangs while accessing clipboard under Mac OS X.
#---------------------------------------------------------------------
# ide.mac.useNativeClipboard=True
#---------------------------------------------------------------------
# Maximum size (kilobytes) IDEA will load for showing past file contents -
# in Show Diff or when calculating Digest Diff.
#---------------------------------------------------------------------
# idea.max.vcs.loaded.size.kb=20480

הגדרת סביבת הפיתוח המשולבת למכונות עם נפח זיכרון נמוך

אם אתם מריצים את Android Studio במכונה עם מפרט נמוך מהמפרט המומלץ (ראו דרישות המערכת), תוכלו להתאים אישית את סביבת הפיתוח המשולבת כדי לשפר את הביצועים במכונה באופן הבא:

  • הקטנת גודל האשפה המקסימלי שזמין ל-Android Studio: מקטינים את גודל האשפה המקסימלי של Android Studio ל-512MB. מידע נוסף על שינוי הגודל המקסימלי של אשכול זמין במאמר גודל אשכול מקסימלי.
  • עדכון Gradle והפלאגין של Android Gradle: מעדכנים לגרסאות העדכניות ביותר של Gradle והפלאגין של Android Gradle כדי ליהנות משיפורי הביצועים האחרונים. למידע נוסף על עדכון Gradle ועל הפלאגין של Android Gradle, אפשר לעיין בהערות המוצר של הפלאגין של Android Gradle.
  • הפעלת מצב חיסכון באנרגיה: מפעילים את מצב החיסכון באנרגיה כדי להשבית מספר פעולות ברקע שצורכות הרבה זיכרון וסוללה, כולל הדגשת שגיאות ובדיקות בזמן אמת, השלמת קוד באופן אוטומטי בחלון קופץ וקומפילציה מצטברת אוטומטית ברקע. כדי להפעיל את מצב חיסכון בסוללה, לוחצים על קובץ > מצב חיסכון בסוללה.
  • השבתה של בדיקות איתור שגיאות לא נחוצות: כדי לשנות את בדיקות איתור השגיאות ש-Android Studio מריצה בקוד, מבצעים את הפעולות הבאות:

    1. לוחצים על קובץ > הגדרות (ב-macOS, לוחצים על Android Studio > העדפות) כדי לפתוח את תיבת הדו-שיח הגדרות.
    2. בחלונית הימנית, מרחיבים את הקטע עורך ולוחצים על בדיקות.
    3. לוחצים על תיבות הסימון כדי לבחור או לבטל את הבחירה של בדיקות האיתור של שגיאות בקוד, בהתאם לפרויקט.
    4. לוחצים על אישור או על OK כדי לשמור את השינויים.
  • ניפוי באגים במכשיר פיזי: כדי לשפר את הביצועים הכוללים של Android Studio, אפשר לנתח באגים במכשיר פיזי. ניפוי באגים במהדורת הדמיה צורך יותר זיכרון מאשר ניפוי באגים במכשיר פיזי.

  • הכללת יחסי תלות רק לשירותי Google Play הנחוצים: צריך לכלול בפרויקט רק יחסי תלות לשירותי Google Play הנחוצים. יחסי התלות מגדילים את נפח הזיכרון הנדרש, ולכן הגבלת יחסי התלות משפרת את השימוש בזיכרון ואת הביצועים. למידע נוסף, ראו הצהרת יחסי תלות ל-Google Play Services.

  • צמצום הגודל המקסימלי של אשכול הנתונים שזמין ל-Gradle: כדי לצמצם את הערך של הגודל המקסימלי של אשכול הנתונים של Gradle מברירת המחדל של 1,536MB, משנים את הערך של המאפיין org.gradle.jvmargs בקובץ gradle.properties, כפי שמתואר בהמשך:

    # Make sure to gradually decrease this value and note
    # changes in performance. Allocating too little memory can
    # also decrease performance.
    org.gradle.jvmargs = -Xmx1536m
    
  • מוודאים שהאוסף המקביל לא מופעל: Android Studio יכולה לאסוף יחידות עצמאיות במקביל, אבל אם יש לכם מערכת עם זיכרון נמוך, כדאי להשאיר את התכונה הזו מושבתת. כדי לבדוק את ההגדרה הזו:

    1. לוחצים על קובץ > הגדרות (ב-macOS, Android Studio > העדפות) כדי לפתוח את תיבת הדו-שיח הגדרות.
    2. בחלונית הימנית, מרחיבים את האפשרות Build, Execution, Deployment ולוחצים על Compiler.
    3. מוודאים שהאפשרות Compile independent modules in parallel לא מסומנת.
    4. אם ביצעתם שינוי, לוחצים על אישור או על אישור כדי שהשינוי ייכנס לתוקף.

הגדרת שרת proxy

שרתים פרויקטי משמשים כנקודות חיבור ביניים בין לקוחות HTTP לבין שרתי אינטרנט, ומספקים אבטחה ופרטיות לחיבורי אינטרנט.

כדי לתמוך בהפעלת Android Studio מאחורי חומת אש, צריך להשתמש בדף ההגדרות של שרת ה-proxy מסוג HTTP ב-IDE של Android Studio כדי להגדיר את ההגדרות של שרת ה-proxy מסוג HTTP.

כשמריצים את הפלאגין של Android Gradle משורת הפקודה או במכונות שבהן Android Studio לא מותקן, כמו שרתי אינטגרציה רציפה, צריך להגדיר את הגדרות שרת ה-proxy בקובץ ה-build של Gradle.

הגדרת שרת ה-proxy של Android Studio

Android Studio תומך בהגדרות שרת proxy מסוג HTTP, כך שתוכלו להריץ את Android Studio מאחורי חומת אש או רשת מאובטחת. כדי להגדיר את הגדרות שרת ה-proxy ל-HTTP ב-Android Studio:

  1. בסרגל התפריטים, לוחצים על File > Settings (ב-macOS, לוחצים על Android Studio > Preferences).
  2. בחלונית הימנית, לוחצים על מראה והתנהגות > הגדרות מערכת > שרת proxy של HTTP. יופיע הדף HTTP Proxy.
  3. בוחרים באפשרות Auto-detect proxy settings (זיהוי אוטומטי של הגדרות שרת ה-proxy) כדי להשתמש בכתובת URL של תצורה אוטומטית של שרת proxy עבור הגדרות שרת ה-proxy, או באפשרות Manual proxy configuration (תצורה ידנית של שרת proxy) כדי להזין כל אחת מההגדרות בעצמכם. הסבר מפורט על ההגדרות האלה זמין במאמר שרת proxy ל-HTTP.
  4. לוחצים על אישור או על OK כדי שהשינויים ייכנסו לתוקף.

פלאגין Android להגדרות של שרת proxy ל-HTTP ב-Gradle

כשמריצים את הפלאגין של Android משורת הפקודה או במכונות שבהן Android Studio לא מותקן, צריך להגדיר את הגדרות שרת ה-proxy של הפלאגין של Android Gradle בקובץ ה-build של Gradle.

כדי להגדיר הגדרות של שרת proxy ל-HTTP לאפליקציה ספציפית, מגדירים את הגדרות ה-proxy בקובץ build.gradle לפי הצורך לכל מודול של האפליקציה:

plugins {
  id 'com.android.application'
}

android {
    ...

    defaultConfig {
        ...
        systemProp.http.proxyHost=proxy.company.com
        systemProp.http.proxyPort=443
        systemProp.http.proxyUser=userid
        systemProp.http.proxyPassword=password
        systemProp.http.auth.ntlm.domain=domain
    }
    ...
}

כדי להגדיר את הגדרות שרת ה-proxy ל-HTTP ברמת הפרויקט, מגדירים את הגדרות שרת ה-proxy בקובץ gradle/gradle.properties:

# Project-wide Gradle settings.
...

systemProp.http.proxyHost=proxy.company.com
systemProp.http.proxyPort=443
systemProp.http.proxyUser=username
systemProp.http.proxyPassword=password
systemProp.http.auth.ntlm.domain=domain

systemProp.https.proxyHost=proxy.company.com
systemProp.https.proxyPort=443
systemProp.https.proxyUser=username
systemProp.https.proxyPassword=password
systemProp.https.auth.ntlm.domain=domain

...

מידע נוסף על שימוש במאפייני Gradle להגדרות שרת proxy זמין במדריך למשתמש של Gradle.

אופטימיזציה של ביצועי Android Studio ב-Windows

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

צמצום ההשפעה של תוכנת האנטי-וירוס על מהירות ה-build

חלק מתוכנות האנטי-וירוס יכולות להפריע לתהליך ה-build ב-Android Studio, וכתוצאה מכך ה-builds יפעלו לאט יותר. כשמריצים build ב-Android Studio, Gradle אוסף את המשאבים ואת קוד המקור של האפליקציה ומדרג אותם יחד בחבילת APK או AAB. במהלך התהליך נוצרים הרבה קבצים במחשב. אם תוכנת האנטי-וירוס מופעלת עם סריקה בזמן אמת, היא עלולה לאלץ את תהליך ה-build להפסיק בכל פעם שנוצר קובץ בזמן הסריקה שלו.

כדי למנוע את הבעיה הזו, אפשר להחריג ספריות מסוימות מהסריקה בזמן אמת בתוכנת האנטי-וירוס. ב-Windows, אפשר להשתמש ב-Build Analyzer כדי לזהות את הספריות שצריך להחריג מהסריקה הפעילה ולהחריג אותן.

ברשימה הבאה מופיע המיקום שמוגדר כברירת מחדל לכל ספרייה ב-Android Studio שאפשר להחריג מהסריקה בזמן אמת:

מטמון Gradle
%USERPROFILE%\.gradle
פרויקטים ב-Android Studio
%USERPROFILE%\AndroidStudioProjects
Android SDK
%USERPROFILE%\AppData\Local\Android\SDK

קבצי מערכת של Android Studio

תחביר: %LOCALAPPDATA%\Google\<product><version>

דוגמה: C:\Users\YourUserName\AppData\Local\Google\AndroidStudio4.1

התאמה אישית של מיקומי ספריות בסביבות שבהן המדיניות הקבוצתית שולטת

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

ברשימה הבאה מוסבר איך להתאים אישית את המיקום של כל ספרייה ב-Android Studio, כאשר C:\WorkFolder היא הספרייה שכבר לא נכללת במדיניות הקבוצה:

מטמון Gradle
מגדירים את משתנה הסביבה GRADLE_USER_HOME כך שיצביע על C:\WorkFolder\.gradle.
פרויקטים ב-Android Studio
העברה או יצירה של ספריות פרויקטים בספריית משנה מתאימה של C:\WorkFolder. לדוגמה, C:\WorkFolder\AndroidStudioProjects.
Android SDK

כדי להתאים אישית את המיקום:

  1. ב-Android Studio, פותחים את תיבת הדו-שיח Settings (Preferences ב-macOS), ואז עוברים אל Appearance & Behavior > System Settings > Android SDK.

  2. משנים את הערך של Android SDK Location ל-C:\WorkFolder\AndroidSDK.

    כדי לא להוריד שוב את ה-SDK, מעתיקים את הספרייה הקיימת של ה-SDK שנמצאת ב-%USERPROFILE%\AppData\Local\Android\SDK כברירת מחדל למיקום החדש.

קובצי מערכת של Android Studio

כדי להתאים אישית את המיקום:

  1. ב-Android Studio, לוחצים על Help (עזרה) > Edit Custom Properties (עריכת מאפיינים מותאמים אישית).

    אם אין לכם קובץ idea.properties, תופיע ב-Android Studio בקשה ליצור אותו.

  2. מוסיפים את השורה הבאה לקובץ idea.properties:

    idea.system.path=c:/workfolder/studio/caches/trunk-system