Android Studio の設定

Android Studio には、Java Development Kit(JDK)や利用可能な RAM などのシステム要件を確認し、最適化されたデフォルトの Android Virtual Device(AVD)エミュレーションや更新されたシステム イメージなどのデフォルト設定を構成するウィザードとテンプレートが用意されています。このドキュメントでは、Android Studio の使用方法をカスタマイズするための追加の構成設定について説明します。

Android Studio では、[Help] メニューから 2 つの構成ファイルにアクセスできます。

  • studio.vmoptions: ヒープサイズやキャッシュ サイズなど、Android Studio の Java 仮想マシン(JVM)のオプションをカスタマイズします。Linux マシンでは、Android Studio のバージョンによっては、このファイルが studio64.vmoptions という名前になっている場合があります。
  • idea.properties: プラグイン フォルダのパス、サポートされる最大ファイルサイズなど、Android Studio のプロパティをカスタマイズします。

エミュレータやデバイスのセットアップ方法や使用方法については、以下のトピックをご覧ください。

構成ファイルを見つける

構成ファイルは両方とも Android Studio の構成ディレクトリに保存されます。構成ディレクトリを確認するには、ディレクトリをご覧ください。

次の環境変数を使用して、他の場所にある特定のオーバーライド ファイルを指定できます。

  • STUDIO_VM_OPTIONS: .vmoptions ファイルの名前と場所を設定します。
  • STUDIO_PROPERTIES: .properties ファイルの名前と場所を設定します。

使用する JDK は、Android ビルドの Java バージョンで構成できます。

VM オプションのカスタマイズ

studio.vmoptions ファイルを使用すると、Android Studio の JVM のオプションをカスタマイズできます。Android Studio のパフォーマンスを向上させるために調整する最も一般的なオプションは、最大ヒープサイズですが、studio.vmoptions ファイルを使用して、初期ヒープサイズ、キャッシュ サイズ、Java ガベージ コレクション スイッチなど、他のデフォルト設定をオーバーライドすることもできます。

新しい studio.vmoptions ファイルを作成するか、既存のファイルを開く手順は次のとおりです。

  1. [Help] > [Edit Custom VM Options] をクリックします。Android Studio の VM オプションをまだ編集したことがない場合は、新しい studio.vmoptions ファイルを作成するよう求められます。[作成] をクリックしてファイルを作成します。
  2. Android Studio のエディタ ウィンドウで studio.vmoptions ファイルが開きます。 ファイルを編集して、カスタマイズした VM オプションを追加します。カスタマイズ可能な JVM オプションの一覧については、Oracle の「Java HotSpot VM Options」ページをご覧ください。

作成した studio.vmoptions ファイルは、Android Studio インストール フォルダの bin/ ディレクトリにあるデフォルトの studio.vmoptions ファイルに追加されます。

Android Studio のプログラム フォルダにある studio.vmoptions ファイルは直接編集しないでください。ファイルにアクセスして Android Studio のデフォルトの VM オプションを確認することはできますが、独自の studio.vmoptions ファイルのみを編集することで、Android Studio の重要なデフォルト設定がオーバーライドされなくなります。したがって、studio.vmoptions ファイルでは必要な属性のみをオーバーライドし、変更されていない属性については Android Studio で引き続きデフォルト値を使用します。

最大ヒープサイズ

Android Studio のデフォルトの最大ヒープサイズは 1,280 MB です。大規模なプロジェクトで作業する場合や、システムに大量の RAM が搭載されている場合は、Android Studio プロセス(コア IDE、Gradle デーモン、Kotlin デーモンなど)の最大ヒープサイズを増やすことによって、パフォーマンスを改善できます。

Android Studio では可能なヒープサイズの最適化が自動的にチェックされ、パフォーマンスを改善できることが検出されると通知されます。

Android Studio プロセス用の RAM の最大量を設定できるメモリ設定

図 1. メモリの推奨設定に関する通知

5 GB 以上の RAM を搭載した 64 ビットシステムを使用している場合、プロジェクトのヒープサイズを手動で調整することもできます。方法は次のとおりです。

  1. メニューバーから [File] > [Settings](macOS では [Android Studio] > [Preferences])をクリックします。
  2. [Appearance & Behavior] > [System Settings] > [Memory Settings] をクリックします。

    Android Studio プロセス用の RAM の最大量を設定できるメモリ設定

    図 2. [メモリ設定] で RAM の最大容量を構成します。

  3. ヒープサイズを調整する。

  4. [適用] をクリックします。

    IDE のヒープサイズを変更した場合は、新しいメモリ設定が適用される前に Android Studio を再起動する必要があります。

IDE 設定のエクスポートとインポート

プロジェクトの IDE で優先される設定の一部またはすべてを含む Settings.jar をエクスポートできます。その JAR ファイルを他のプロジェクトにインポートできます。また、この JAR ファイルを同僚のプロジェクトにインポートできるようにすることもできます。

詳細については、IntelliJ IDEA の IDE 設定を共有するをご覧ください。

IDE プロパティのカスタマイズ

idea.properties ファイルを使用すると、ユーザーがインストールしたプラグインのパスや IDE でサポートされている最大ファイルサイズなど、Android Studio の IDE プロパティをカスタマイズできます。idea.properties ファイルは IDE のデフォルト プロパティと統合されるため、指定できるのはオーバーライド プロパティのみです。

新しい idea.properties ファイルを作成する、または既存のファイルを開く手順は次のとおりです。

  1. [Help] > [Edit Custom Properties] をクリックします。IDE プロパティを編集したことがない場合は、新しい idea.properties ファイルを作成するよう求められます。[Yes] をクリックしてファイルを作成します。
  2. Android Studio のエディタ ウィンドウで idea.properties ファイルが開きます。このファイルを編集して、カスタマイズした IDE プロパティを追加します。

次の idea.properties ファイルには、よくカスタマイズされる IDE プロパティが含まれています。プロパティの一覧については、IntelliJ IDEA の idea.properties ファイルをご覧ください。

#---------------------------------------------------------------------
# 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 を設定する

推奨仕様(システム要件を参照)に満たないマシンで Android Studio を実行する場合、次のように IDE をカスタマイズして、マシンのパフォーマンスを向上させることができます。

  • Android Studio で使用できる最大ヒープサイズを引き下げる: Android Studio の最大ヒープサイズを 512 MB に引き下げます。最大ヒープサイズの変更方法については、最大ヒープサイズをご覧ください。
  • Gradle と Android Gradle プラグインをアップデートする: 最新のパフォーマンス改善を利用するために、Gradle と Android Gradle プラグインを最新バージョンにアップデートします。Gradle と Android Gradle プラグインのアップデートについて詳しくは、Android Gradle プラグインのリリースノートをご覧ください。
  • 省電力モードを有効にする: 省電力モードを有効にすると、エラーのハイライト表示やオンザフライの検査、ポップアップ コードの自動補完、自動増分バックグラウンド コンパイルなど、メモリとバッテリーを大量に消費する多くのバックグラウンド処理がオフになります。省電力モードを有効にするには、[File] > [Power Save Mode] をクリックします。
  • 不要な lint チェックを無効にする: Android Studio でコードに対して実行する lint チェックを変更するには、次の手順を行います。

    1. [File] > [Settings](macOS では [Android Studio] > [Preferences])をクリックして [Settings] ダイアログを開きます。
    2. 左側のパネルで [Editor] セクションを展開し、[Inspections] をクリックします。
    3. チェックボックスをクリックして、プロジェクトに合わせて lint チェックをオンまたはオフにします。
    4. [Apply] または [OK] をクリックして変更を保存します。
  • 実機でデバッグする: 実機でデバッグすることで、Android Studio の全体的なパフォーマンスを改善します。エミュレータでのデバッグは、実機でのデバッグよりも多くのメモリを使用します。

  • 必要な Google Play 開発者サービスのみを依存関係として含める: 必要な Google Play 開発者サービスのみを依存関係としてプロジェクトに含めます。依存関係によって必要なメモリ量が増加するため、依存関係を制限することでメモリ使用量とパフォーマンスが向上します。詳細については、Google Play 開発者サービスの依存関係を宣言するをご覧ください。

  • Gradle で使用可能な最大ヒープサイズを減らす: 次に示すように、gradle.properties ファイルの org.gradle.jvmargs プロパティをオーバーライドして、Gradle の最大ヒープサイズの値をデフォルトの 1,536 MB から小さくします。

    # 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. [File] > [Settings](macOS では [Android Studio] > [Preferences])をクリックして [Settings] ダイアログを開きます。
    2. 左側のパネルで、[Build, Execution, Deployment] を展開し、[Compiler] をクリックします。
    3. [Compile independent modules in parallel] チェックボックスがオフであることを確認します。
    4. 変更した場合は、[Apply] または [OK] をクリックして変更を有効にします。

プロキシの設定

プロキシは、HTTP クライアントとウェブサーバー間を仲介し、インターネット接続のセキュリティとプライバシーを強化する接続ポイントとして機能します。

ファイアウォールの内側で Android Studio を実行するには、Android Studio IDE の [HTTP Proxy] 設定ページを使用して、HTTP プロキシを設定します。

コマンドラインから、または Android Studio がインストールされていないマシン(継続的インテグレーション サーバーなど)で Android Gradle プラグインを実行する場合は、Gradle ビルドファイルでプロキシ設定を行います。

Android Studio のプロキシ設定

Android Studio は HTTP プロキシ設定をサポートしているため、ファイアウォールの背後やセキュアなネットワークでも Android Studio を実行できます。Android Studio で 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 プロキシをご覧ください。
  4. [Apply] または [OK] をクリックして変更を有効にします。

Android Plugin for Gradle の HTTP プロキシ設定

コマンドラインから、または Android Studio がインストールされていないマシンで Android プラグインを実行する場合は、Gradle ビルドファイルで Android 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 のユーザーガイドをご覧ください。

Windows で Android Studio のパフォーマンスを最適化する

Windows での Android Studio のパフォーマンスは、さまざまな要因の影響を受ける可能性があります。ここでは、Windows で最善のパフォーマンスを得るために Android Studio の設定を最適化する方法について説明します。

ビルド速度に対するウイルス対策ソフトウェアの影響を最小限に抑える

一部のウイルス対策ソフトウェアは Android Studio のビルドプロセスの妨げとなり、ビルドの実行速度を大幅に低下させることがあります。Android Studio でビルドを実行する場合、Gradle はアプリのリソースとソースコードをコンパイルし、コンパイルされたリソースをまとめて APK または AAB にパッケージ化します。このプロセスでは、パソコン上に多数のファイルが作成されます。ウイルス対策ソフトウェアでリアルタイム スキャンが有効になっている場合、そのファイルのスキャン中にファイルが作成されるたびに、ビルドプロセスが強制的に停止されることがあります。

この問題を回避するには、ウイルス対策ソフトウェアのリアルタイム スキャンから特定のディレクトリを除外します。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 キャッシュ
C:\WorkFolder\.gradle を指すように GRADLE_USER_HOME 環境変数を定義します。
Android Studio プロジェクト
C:\WorkFolder の適切なサブディレクトリにプロジェクト ディレクトリを移動するか作成します。たとえば、C:\WorkFolder\AndroidStudioProjects です。
Android SDK

位置情報をカスタマイズする手順は次のとおりです。

  1. Android Studio で [Settings] ダイアログを開き(macOS では [Preferences])、[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 ファイルを作成するよう求められます。

  2. idea.properties ファイルに次の行を追加します。

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