Android Studio را پیکربندی کنید

اندروید استودیو ویزاردها و قالب‌هایی را ارائه می‌دهد که الزامات سیستم شما، مانند کیت توسعه جاوا (JDK) و رم موجود را تأیید می‌کنند و تنظیمات پیش‌فرض، مانند شبیه‌سازی پیش‌فرض بهینه‌شده دستگاه مجازی اندروید (AVD) و تصاویر سیستم به‌روز شده را پیکربندی می‌کنند. این سند تنظیمات پیکربندی اضافی را برای سفارشی‌سازی استفاده شما از اندروید استودیو شرح می‌دهد.

اندروید استودیو از طریق منوی راهنما (Help) به دو فایل پیکربندی دسترسی می‌دهد:

  • studio.vmoptions : گزینه‌های مربوط به ماشین مجازی جاوا (JVM) اندروید استودیو، مانند اندازه heap و اندازه cache را سفارشی می‌کند. توجه داشته باشید که در دستگاه‌های لینوکس، بسته به نسخه اندروید استودیو شما، این فایل ممکن است studio64.vmoptions نامگذاری شود.
  • idea.properties : ویژگی‌های اندروید استودیو، مانند مسیر پوشه افزونه‌ها یا حداکثر اندازه فایل پشتیبانی‌شده را سفارشی می‌کند.

برای مستندات خاص در مورد راه‌اندازی و استفاده از شبیه‌ساز و دستگاه، به مباحث زیر مراجعه کنید:

فایل‌های پیکربندی خود را پیدا کنید

هر دو فایل پیکربندی در دایرکتوری پیکربندی اندروید استودیو ذخیره می‌شوند. برای یافتن دایرکتوری پیکربندی، به بخش «Directories» مراجعه کنید.

می‌توانید از متغیرهای محیطی زیر برای اشاره به فایل‌های لغو شده خاص در جای دیگر استفاده کنید:

  • STUDIO_VM_OPTIONS : نام و مکان فایل .vmoptions را تنظیم می‌کند.
  • STUDIO_PROPERTIES : نام و مکان فایل .properties ‎ را تنظیم می‌کند.

شما می‌توانید با مراجعه به نسخه‌های جاوا در نسخه‌های اندروید، پیکربندی کنید که کدام JDKها استفاده شوند.

گزینه‌های ماشین مجازی خود را سفارشی کنید

فایل studio.vmoptions به شما امکان می‌دهد گزینه‌های مربوط به JVM اندروید استودیو را سفارشی کنید. برای بهبود عملکرد اندروید استودیو، رایج‌ترین گزینه برای تنظیم، حداکثر اندازه heap است، اما می‌توانید از فایل studio.vmoptions برای لغو سایر تنظیمات پیش‌فرض مانند اندازه اولیه heap، اندازه حافظه پنهان و سوئیچ‌های جمع‌آوری زباله جاوا نیز استفاده کنید.

برای ایجاد یک فایل جدید studio.vmoptions یا باز کردن فایل موجود خود، این مراحل را دنبال کنید:

  1. روی Help > Edit Custom VM Options کلیک کنید. اگر قبلاً هرگز گزینه‌های VM را برای Android Studio ویرایش نکرده‌اید، IDE از شما می‌خواهد که یک فایل جدید studio.vmoptions ایجاد کنید. برای ایجاد فایل، روی Create کلیک کنید.
  2. فایل studio.vmoptions در پنجره ویرایشگر اندروید استودیو باز می‌شود. برای افزودن گزینه‌های ماشین مجازی سفارشی خود، فایل را ویرایش کنید. برای مشاهده لیست کامل گزینه‌های قابل تنظیم JVM، به صفحه گزینه‌های ماشین مجازی جاوا هات‌اسپات اوراکل مراجعه کنید.

فایل studio.vmoptions که ایجاد می‌کنید به فایل پیش‌فرض studio.vmoptions که در دایرکتوری bin/ درون پوشه نصب اندروید استودیو قرار دارد، اضافه می‌شود.

فایل studio.vmoptions که در پوشه برنامه اندروید استودیو قرار دارد را مستقیماً ویرایش نکنید. اگرچه می‌توانید برای مشاهده گزینه‌های پیش‌فرض ماشین مجازی اندروید استودیو به این فایل دسترسی داشته باشید، اما ویرایش فقط فایل studio.vmoptions خودتان تضمین می‌کند که تنظیمات پیش‌فرض مهم اندروید استودیو را لغو نمی‌کنید. بنابراین، در فایل studio.vmoptions خود، فقط ویژگی‌هایی را که برایتان مهم هستند، لغو کنید و به اندروید استودیو اجازه دهید از مقادیر پیش‌فرض برای هر ویژگی که تغییر نداده‌اید، استفاده کند.

حداکثر اندازه هیپ

به طور پیش‌فرض، اندروید استودیو حداکثر اندازه حافظه heap برابر با ۱۲۸۰ مگابایت دارد. اگر روی یک پروژه بزرگ کار می‌کنید یا سیستم شما رم زیادی دارد، می‌توانید با افزایش حداکثر اندازه حافظه heap برای فرآیندهای اندروید استودیو، مانند IDE اصلی، سرویس Gradle و سرویس Kotlin، عملکرد را بهبود بخشید.

اندروید استودیو به طور خودکار بهینه‌سازی‌های ممکن برای اندازه هیپ را بررسی می‌کند و در صورت تشخیص امکان بهبود عملکرد، به شما اطلاع می‌دهد.

تنظیمات حافظه، که به شما امکان می‌دهد حداکثر مقدار رم را برای فرآیندهای اندروید استودیو تنظیم کنید.

شکل ۱. اعلانی درباره تنظیمات حافظه پیشنهادی.

اگر از سیستم ۶۴ بیتی با حداقل ۵ گیگابایت رم استفاده می‌کنید، می‌توانید اندازه‌های هیپ را برای پروژه خود به صورت دستی نیز تنظیم کنید. برای انجام این کار، این مراحل را دنبال کنید:

  1. از نوار منو روی File > Settings کلیک کنید (در macOS روی Android Studio > Preferences ).
  2. روی ظاهر و رفتار > تنظیمات سیستم > تنظیمات حافظه کلیک کنید.

    تنظیمات حافظه، که به شما امکان می‌دهد حداکثر مقدار رم را برای فرآیندهای اندروید استودیو تنظیم کنید.

    شکل ۲. حداکثر مقدار رم را در تنظیمات حافظه پیکربندی کنید.

  3. اندازه‌های پشته را تنظیم کنید.

  4. روی اعمال کلیک کنید.

    اگر اندازه حافظه heap را برای IDE تغییر دهید، قبل از اعمال تنظیمات جدید حافظه، باید اندروید استودیو را مجدداً راه‌اندازی کنید.

تنظیمات IDE را صادر و وارد کنید

شما می‌توانید یک فایل Settings.jar که شامل تمام یا زیرمجموعه‌ای از تنظیمات IDE مورد نظر شما برای یک پروژه است را صادر کنید. سپس می‌توانید فایل JAR را در پروژه‌های دیگر خود وارد کنید و/یا فایل JAR را در دسترس همکاران خود قرار دهید تا در پروژه‌های خود وارد کنند.

برای اطلاعات بیشتر، به تنظیمات اشتراک‌گذاری IDE در IntelliJ IDEA مراجعه کنید.

ویژگی‌های IDE خود را سفارشی کنید

فایل idea.properties به شما امکان می‌دهد ویژگی‌های IDE را برای اندروید استودیو، مانند مسیر افزونه‌های نصب‌شده توسط کاربر و حداکثر اندازه فایل پشتیبانی‌شده توسط IDE، سفارشی کنید. فایل idea.properties با ویژگی‌های پیش‌فرض IDE ادغام شده است، بنابراین می‌توانید فقط ویژگی‌های لغو شده را مشخص کنید.

برای ایجاد یک فایل جدید idea.properties یا باز کردن فایل موجود خود، این مراحل را دنبال کنید:

  1. روی Help > Edit Custom Properties کلیک کنید. اگر قبلاً ویژگی‌های IDE را ویرایش نکرده‌اید، اندروید استودیو از شما می‌خواهد که یک فایل جدید idea.properties ایجاد کنید. برای ایجاد فایل، روی Yes کلیک کنید.
  2. فایل idea.properties در پنجره ویرایشگر اندروید استودیو باز می‌شود. فایل را ویرایش کنید تا ویژگی‌های 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

پیکربندی IDE برای دستگاه‌های با حافظه کم

اگر اندروید استودیو را روی دستگاهی با مشخصات کمتر از مشخصات توصیه‌شده اجرا می‌کنید (به الزامات سیستم مراجعه کنید)، می‌توانید IDE را برای بهبود عملکرد در دستگاه خود به شرح زیر سفارشی کنید:

  • کاهش حداکثر اندازه هیپ موجود برای اندروید استودیو: حداکثر اندازه هیپ برای اندروید استودیو را به ۵۱۲ مگابایت کاهش دهید. برای اطلاعات بیشتر در مورد تغییر حداکثر اندازه هیپ، به بخش حداکثر اندازه هیپ مراجعه کنید.
  • به‌روزرسانی Gradle و افزونه‌ی Android Gradle: برای بهره‌مندی از جدیدترین بهبودهای عملکرد، Gradle و افزونه‌ی Android Gradle را به آخرین نسخه‌ها به‌روزرسانی کنید. برای اطلاعات بیشتر در مورد به‌روزرسانی Gradle و افزونه‌ی Android Gradle، به یادداشت‌های انتشار افزونه‌ی Android Gradle مراجعه کنید.
  • فعال کردن حالت ذخیره نیرو: حالت ذخیره نیرو را فعال کنید تا تعدادی از عملیات پس‌زمینه که مصرف حافظه و باتری بالایی دارند، از جمله برجسته‌سازی خطا و بررسی‌های درجا، تکمیل خودکار کد و کامپایل افزایشی خودکار در پس‌زمینه، غیرفعال شوند. برای فعال کردن حالت ذخیره نیرو، روی فایل > حالت ذخیره نیرو کلیک کنید.
  • غیرفعال کردن بررسی‌های غیرضروری lint: برای تغییر اینکه اندروید استودیو کدام بررسی‌های lint را روی کد شما اجرا کند، موارد زیر را انجام دهید:

    1. برای باز کردن کادر تنظیمات ، روی File > Settings (در macOS، Android Studio > Preferences ) کلیک کنید.
    2. در پنل سمت چپ، بخش Editor را باز کرده و روی Inspections کلیک کنید.
    3. برای انتخاب یا لغو انتخاب بررسی‌های پرز متناسب با پروژه خود، روی کادرهای انتخاب کلیک کنید.
    4. برای ذخیره تغییرات ، روی اعمال یا تأیید کلیک کنید.
  • اشکال‌زدایی روی یک دستگاه فیزیکی: با اشکال‌زدایی روی یک دستگاه فیزیکی، عملکرد کلی اندروید استودیو را بهبود بخشید. اشکال‌زدایی روی یک شبیه‌ساز نسبت به اشکال‌زدایی روی یک دستگاه فیزیکی، حافظه بیشتری مصرف می‌کند.

  • Include only necessary Google Play services as dependencies: Only include necessary Google Play Services as dependencies in your project. Dependencies increase the amount of memory necessary, so limiting them improves memory usage and performance. For more information, see Declare dependencies for Google Play services .

  • کاهش حداکثر اندازه heap موجود برای Gradle: مقدار حداکثر اندازه heap Gradle را از مقدار پیش‌فرض آن که ۱۵۳۶ مگابایت است، با بازنویسی ویژگی 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
    
  • مطمئن شوید که کامپایل موازی فعال نباشد: اندروید استودیو می‌تواند ماژول‌های مستقل را به صورت موازی کامپایل کند، اما اگر سیستم شما حافظه کمی دارد، این ویژگی را غیرفعال بگذارید. برای بررسی این تنظیم، موارد زیر را انجام دهید:

    1. برای باز کردن کادر تنظیمات ، روی File > Settings (در macOS، Android Studio > Preferences ) کلیک کنید.
    2. در پنل سمت چپ، گزینه‌های Build، Execution، Deployment را باز کنید و سپس روی Compiler کلیک کنید.
    3. مطمئن شوید که گزینه‌ی «کامپایل ماژول‌های مستقل به صورت موازی» تیک نخورده باشد.
    4. اگر تغییری ایجاد کرده‌اید، برای اعمال تغییر، روی «اعمال» یا «تأیید» کلیک کنید.

تنظیمات پروکسی را تنظیم کنید

پروکسی‌ها به عنوان نقاط اتصال واسطه بین کلاینت‌های HTTP و سرورهای وب عمل می‌کنند که امنیت و حریم خصوصی را به اتصالات اینترنتی اضافه می‌کنند.

برای پشتیبانی از اجرای اندروید استودیو پشت فایروال، از صفحه تنظیمات پروکسی HTTP در IDE اندروید استودیو برای تنظیم تنظیمات پروکسی HTTP استفاده کنید.

هنگام اجرای افزونه Android Gradle از خط فرمان یا روی دستگاه‌هایی که Android Studio در آنها نصب نشده است، مانند سرورهای یکپارچه‌سازی مداوم، تنظیمات پروکسی را در فایل ساخت Gradle تنظیم کنید.

پروکسی اندروید استودیو را تنظیم کنید

اندروید استودیو از تنظیمات پروکسی HTTP پشتیبانی می‌کند، بنابراین می‌توانید اندروید استودیو را پشت یک فایروال یا شبکه امن اجرا کنید. برای تنظیم تنظیمات پروکسی HTTP در اندروید استودیو:

  1. از نوار منو، روی File > Settings کلیک کنید (در macOS، روی Android Studio > Preferences کلیک کنید).
  2. در پنل سمت چپ، روی Appearance & Behavior > System Settings > HTTP Proxy کلیک کنید. صفحه HTTP Proxy ظاهر می‌شود.
  3. برای استفاده از URL پیکربندی خودکار پروکسی برای تنظیمات پروکسی، گزینه Auto-detect proxy settings یا برای وارد کردن هر یک از تنظیمات توسط خودتان ، گزینه Manual proxy configuration را انتخاب کنید. برای توضیح دقیق‌تر این تنظیمات، به HTTP Proxy مراجعه کنید.
  4. برای اعمال تغییرات، روی «اعمال» یا «تأیید» کلیک کنید.

افزونه اندروید برای تنظیمات پروکسی Gradle HTTP

هنگام اجرای افزونه اندروید از خط فرمان یا روی دستگاه‌هایی که اندروید استودیو روی آنها نصب نشده است، تنظیمات پروکسی افزونه اندروید Gradle را در فایل ساخت Gradle تنظیم کنید.

برای تنظیمات پروکسی HTTP مخصوص برنامه، تنظیمات پروکسی را در فایل 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
    }
    ...
}

برای تنظیمات پروکسی HTTP در سطح پروژه، تنظیمات پروکسی را در فایل 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 برای تنظیمات پروکسی، به راهنمای کاربر Gradle مراجعه کنید.

بهینه‌سازی عملکرد اندروید استودیو در ویندوز

عملکرد اندروید استودیو در ویندوز می‌تواند تحت تأثیر عوامل مختلفی قرار گیرد. در این بخش نحوه بهینه‌سازی تنظیمات اندروید استودیو برای دستیابی به بهترین عملکرد ممکن در ویندوز توضیح داده شده است.

به حداقل رساندن تأثیر نرم‌افزار آنتی‌ویروس بر سرعت ساخت

برخی از نرم‌افزارهای آنتی‌ویروس می‌توانند در فرآیند ساخت اندروید استودیو اختلال ایجاد کنند و باعث شوند که ساخت‌ها به طرز چشمگیری کندتر اجرا شوند. وقتی شما یک ساخت را در اندروید استودیو اجرا می‌کنید، Gradle منابع و کد منبع برنامه شما را کامپایل می‌کند و سپس منابع کامپایل شده را در یک APK یا AAB بسته‌بندی می‌کند. در طول این فرآیند، فایل‌های زیادی روی رایانه شما ایجاد می‌شوند. اگر نرم‌افزار آنتی‌ویروس شما اسکن بلادرنگ را فعال کرده باشد، نرم‌افزار آنتی‌ویروس می‌تواند هر بار که یک فایل ایجاد می‌شود، فرآیند ساخت را متوقف کند، در حالی که آن فایل را اسکن می‌کند.

برای جلوگیری از این مشکل، می‌توانید دایرکتوری‌های خاصی را از اسکن بلادرنگ در نرم‌افزار آنتی‌ویروس خود حذف کنید. برای ویندوز، Build Analyzer می‌تواند به شما کمک کند دایرکتوری‌هایی را که باید از اسکن فعال مستثنی شوند، شناسایی کرده و آنها را حذف کنید.

لیست زیر مکان پیش‌فرض هر دایرکتوری اندروید استودیو را نشان می‌دهد که می‌توانید از اسکن بلادرنگ مستثنی کنید:

حافظه نهان گرادل
%USERPROFILE%\.gradle
پروژه‌های اندروید استودیو
%USERPROFILE%\AndroidStudioProjects
کیت توسعه نرم‌افزار اندروید (SDK)
%USERPROFILE%\AppData\Local\Android\SDK

فایل‌های سیستمی اندروید استودیو

نحو: %LOCALAPPDATA%\Google\ <product><version>

مثال: C:\Users\YourUserName\AppData\Local\Google\AndroidStudio4.1

سفارشی‌سازی مکان‌های دایرکتوری برای محیط‌های تحت کنترل Group Policy

اگر یک Group Policy دایرکتوری‌هایی را که می‌توانید از اسکن بلادرنگ در رایانه خود مستثنی کنید، محدود کند، می‌توانید دایرکتوری‌های Android Studio خود را به یکی از مکان‌هایی که Group Policy متمرکز از قبل مستثنی کرده است، منتقل کنید.

لیست زیر نحوه سفارشی‌سازی مکان هر دایرکتوری اندروید استودیو را نشان می‌دهد، که در آن C:\WorkFolder دایرکتوری است که Group Policy شما از قبل آن را مستثنی کرده است:

حافظه نهان گرادل
متغیر محیطی GRADLE_USER_HOME را طوری تعریف کنید که به C:\WorkFolder \.gradle اشاره کند.
پروژه‌های اندروید استودیو
دایرکتوری‌های پروژه را به یک زیردایرکتوری مناسب از C:\WorkFolder منتقل یا ایجاد کنید. برای مثال، C:\WorkFolder \AndroidStudioProjects .
کیت توسعه نرم‌افزار اندروید (SDK)

برای سفارشی‌سازی موقعیت مکانی، مراحل زیر را دنبال کنید:

  1. در اندروید استودیو، کادر تنظیمات ( Preferences در macOS) را باز کنید، سپس به Appearance & Behavior > System Settings > Android SDK بروید.

  2. مقدار Android SDK Location را به C:\WorkFolder \AndroidSDK تغییر دهید.

    برای جلوگیری از دانلود مجدد SDK، پوشه SDK موجود را که به طور پیش‌فرض در %USERPROFILE%\AppData\Local\Android\SDK قرار دارد، در مکان جدید کپی کنید.

فایل‌های سیستمی اندروید استودیو

برای سفارشی‌سازی موقعیت مکانی، مراحل زیر را دنبال کنید:

  1. در اندروید استودیو، روی راهنما > ویرایش ویژگی‌های سفارشی کلیک کنید.

    اندروید استودیو از شما می‌خواهد که اگر فایل idea.properties ندارید، آن را ایجاد کنید.

  2. خط زیر را به فایل idea.properties خود اضافه کنید:

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