プロジェクト

全般

プロフィール

Android Studioのセットアップ

Windows環境でのAndroidセットアップについて記述します。

リリース情報

Android Studio Release Notes

Ver. Date Note
2.0.0 2016-04
1.5.1 2015-12
1.5.0 2015-11
1.4.1 2015-10
1.4.0 2015-09
1.3.2 2015-08
1.3.1 2015-08
1.3.0 2015-07
1.2.2 2015-06 ビルドフリーズfix
1.2.1 2015-05 些細な機能性能改善
1.2.0 2015-04 IntelliJ 14.1への更新とその他かなり大きな改善
1.1.0 2015-02 Android Wear, res/mipmap(解像度依存アイコン)、lint改善
1.0.1 2014-12 AVD Manager fix、Windows上でのエミュレータログfix、Windowsインストールfix、デフォルトの更新チャネルをstableに
1.0 2014.12 初期リリース(製品版)
  • 1.0より古いバージョンの記載省略

初期設定

入手

https://developer.android.com/sdk/index.html

Windows版をダウンロードします。2016年4月10日現在、次のファイルが得られます。

  • android-studio-bundle-143.2739321-windows.exe

このページには、動作環境の条件(System Requirements)も記載されています。同日現在の条件は

OS Microsoft Windows 8/7/Vista/2003 (32bitまたは64bit)
RAM 最低2GB以上、推奨4GB
HDD 400MB + 1GB 1GBはAndroid SDK、エミュレータ、キャッシュ
画面 1280×800以上
JDK JDK 7
エミュレータの高速化(オプション) VT-x, EM64T、XD機能対応インテル製CPU

JDKについて

System RequirementsにはJDK 7と記載されていますが、JDK 8ではダメということではなさそうです。
JDK 8でもコンパイル時にJDK 7をターゲットとするコンパイルオプションが指定されます。

インストール

ダウンロードしたファイルを実行します。

install-01.png

install-02.png

install-03.png

Android StudioとAndroid SDKのインストール先を設定します(次の画面)。
Android SDKは、ユーザー権限で(UACの昇格なしに)読み書きできる場所でないと後で手間がかかります。基本的にデフォルトの設定で使うのがよいかと思います。

install-04.png

install-05.png

install-06.png

install-07.png

Android SDKのインストール

Android Studioをインストールした直後は、必要なAndroid SDK(のバージョン)が入っていない可能性があります。

  • [Tools]メニュー > [Android] > [SDK Manager] をクリックし、「Android SDK Manager」画面を開きます。
  • Androidバージョン(APIレベル)一覧が表示されるので、使用するバージョンをチェックし、[Install NN packages...]ボタンをクリックします。(NN:インストールするパッケージの数)
  • ダウンロードが始まり、指定したパッケージがインストールされます。

デフォルトでインストールされるSDKの構成

2015-04-29時点でWindows用Android Studio(135.1740770)をインストールしたときにデフォルトでインストールされたSDKの構成は次の通りです。

Tools
  +-- Android SDK Tools
  +-- Android SDK Platform-tools
  +-- Android SDK Build-tools
Android 5.0.1 (API 21)
  +-- Documentation for Android SDK
  +-- SDK Platform
  +-- Google APIs
  +-- Google APIs Intel x86 Atom System Image
  +-- Sources for Android SDK
Extras
  +-- Android Support Repository
  +-- Google Repository

WindowsでSDKがインストールされるデフォルトのディレクトリは、
C:\Users\<ユーザー名>\AppData\Local\Android\sdk となります。

Kitkat(Android 4.4)用SDKのインストール

  • 「Android SDK Manager」画面を開きます。
  • Anroid 4.4.2(API 19)にチェックをつけます。
  • [Install 8 packages]ボタンをクリックします。

Androidプロジェクトのビルドに使用するJDKバージョン

インストールしたAndroid Studioを立ち上げると、そのマシンのカレントのJavaバージョンが使われます。カレントのバージョンは通常より新しいバージョンなので、JDK 7とJDK 8を両方インストールしたマシンではJDK 8が使われます。

JDK 8を使って立ち上がったAndroid Studioの中でAndroidプロジェクトをビルドするときにJDK 7を使うには、

  • [File]メニュー > [Project Structure]をクリックし、「Project Structure」ダイアログを開きます。
  • 左側ペインで[SDK Location]を選択し、右側ペインの[JDK location]欄にJDK 7のパスを記述し[OK]ボタンをクリックします。

Android Studio自体が使用するJDKに関する設定

http://tools.android.com/tech-docs/configuration

JDKバージョンの指定

環境変数STUDIO_JDKに、使用するJDKバージョンのインストールディレクトリを設定します。

JavaVMのVMオプション

Android Studio自体がJavaで書かれたプログラムなので、JavaVMのオプションを指定することで使用するメモリ量などの調整が可能です。
デフォルトで適用されるJavaVMオプションは、<Android Studioインストールディレクトリ>\binの下の設定ファイルに定義されています。

  • 32bit版Android Studio実行時
    studio.exe.vmoptions
  • 64bit版Android Studio実行時
    studio64.exe.vmoptions

studio64.exe.vmoptionsを

この設定ファイルを直接編集するのは推奨されないので、Android Studioのバージョンに対応する次のディレクトリの下に上述設定ファイルをコピーしてそれを編集します。

Android Studio 1.0, 1.1 %USERPROFILE%\.AndroidStudio
Android Studio 1.2 %USERPROFILE%\.AndroidStudio1.2

もっともよく変更するのは最大メモリサイズでしょう。デフォルトは750MB(32bit版は500MB)と小さいので、大きくしておきます。
(物理メモリは16GB搭載のPCなのでふんだんに割り当て、搭載メモリが少ない場合は他との按配で)

-Xms512m
-Xmx2048m
-XX:ReservedCodeCacheSize=512m

テーマ

  • [File]メニュー > [Settings...] でSettingsウィンドウ(設定画面)を開きます。
  • 左側ペインで[Appearance]を選択し、右側ペインでTheme:欄のリストから選択します。

setting-02.png (Theme setting)

現時点で選択できるのは次です。

テーマ 概要
IntelliJ デフォルトのテーマ
Darcula 黒ベースのテーマ
Windows Windowsの外観に近いテーマ

フォント

編集画面(エディタ)のフォント

  • [File]メニュー > [Settings...] でSettingsウィンドウ(設定画面)を開きます。
  • 左側ペインで[Editor] > [Colors & Fonts] > [Font]を選択します。
  • 既製のテーマでは変更できないので、自分用のテーマを選択します。自分用のテーマが未作成であれば、[Save As]ボタンを押し、名前を指定して作成します。
  • 右側ペインでPrimary font:欄のリストから使用するフォントを選択します。

エディタペインの表示

行番号

  • [File]メニュー > [Settings...] でSettingsウィンドウ(設定画面)を開きます。
  • 左側ペインで[Editor] > [General] > [Appearance]を選択します。
  • 右側ペインで[Show line numbers]にチェックを付けます。

不可視文字の可視化

改行、空白、タブなどの通常不可視な文字を可視化する設定をします。

  • [File]メニュー > [Settings...] でSettingsウィンドウ(設定画面)を開きます。
  • 左側ペインで[Editor] > [General] > [Appearance]を選択します。
  • 右側ペインで[Show shitespaces]にチェックを付けます。

Javaのスタイル

Javaのコードスタイルについての設定は次の画面で行います。

  • [File]メニュー > [Settings...] でSettingsウィンドウ(設定画面)を開きます。
  • 左側ペインで[Editor] > [Code Style] > [Java]を選択します。

switch文のcase句インデント

デフォルトではcase句がインデントされます。インデントをしない設定は次のとおりです。

  • [Wrapping and Braces]タブを選択、'switch' statement > Indent 'case' branches のチェックを外す

プラグインによる拡張

外観関連

背景画像

エディタ画面の背景に画像を表示するSexy Editorプラグインがあります。
http://plugins.jetbrains.com/plugin/?id=1833

エミュレーターの設定

Androidを模擬して実行するエミュレーターを設定します。Androidデバイス実機がない場合にエミュレーター上でプログラムを実行します。

エミュレーターの作成

  • [Tools]メニュー > [Android] > [AVD Manager]をクリックし、「Android Virtual Device Manager」画面を開きます。
    • デフォルトでは、"Nexus 5 API 21 x86"というデバイスが作成されています。これは、HAXMをインストールしておかないとエラーになってしまいます(後述)。
  • [Create Virtual Device...]ボタンを押し、「Virtual Device Configuration」画面を開きます。
  • Category欄でデバイス種類(スマートフォン、タブレット、など)を選び、次に詳細種類を選びます。
    • 例)Tablet - 10.1" WXGA(Tablet)
  • [Next]ボタンを押し、System Imageを選択します。Release Name欄にDownloadが表示されている場合は、まずDownloadをクリックしてSystem Imageを入手すると選択可能となります。
  • [Next]ボタンを押し、名前等を指定します。

ARMとx86の違い

  • エミュレーターの起動時間がx86の方が早い
    Windows 8.1ノートPC(dynabook KIRA L93/39M)で、ARMが4分、x86が40秒

トラブルシュート

x86 emulationエラー

エミュレーターで、x86のイメージを使用すると次のエラーが発生しました。

emulator: ERROR: x86 emulation currently requires hardware acceleration!
Please ensure Intel HAXM is properly installed and usable.
CPU acceleration status: HAX kernel module is not installed!

x86のイメージを実行するには、Intel HAXMをインストールしておく必要があります。
「Android SDK Manager」画面を開き、Extrasの下の"Intel x86 Emulator Accelerator(HAXM installer)"にチェックをつけて[Install]ボタンを押します。これは、HAXMインストーラをSDKディレクトリ以下にダウンロードするだけなので、ダウンロードされたインストーラを手動で実行します。

C:\Users\<ユーザー名>\AppData\Local\Android\sdk\extras\intel\Hardware_Accelerated_Execution_Managerディレクトリの中にあるintelhaxm-android.exeを実行します。次のインストーラ画面が表示されます。

haxminstall-1.png

使用するメモリを聞かれるので、マシンの搭載メモリを勘案して適切そうな値を指定します。

ビルドが遅い

Android Studioを使って誰しも感じることが「ビルドが遅い」ではないでしょうか。Javaなのにビルド待ちに何分も費やすなんて・・・
Android StudioはビルドをGradleに丸投げなので、高速化は基本的にGradleの範疇です。

ビルドを高速にする設定の情報収集

未検証を含めてAndroid Studioのビルド高速化について情報収集したことのメモ

  • Android Studio自身に割り当てるメモリ
    • ヒープサイズのデフォルトは小さい(@-Xms128m -Xmx750m)ので、増やすとよいでしょう
    • ネイティブコードのキャッシュサイズのデフォルトは-XX:ReservedCodeCacheSize=225mなので512m位まで増やしてもよいかも
  • インクリメンタルビルド
    これは効果ありそう
  • Gradleデーモン
    Android StudioはデフォルトでGradleデーモンを使用します。Gradleデーモンに割り当てるメモリを増やすと効果があるかもしれません。
  • gradleラッパーではなくローカルインストールしたGradleを使用
    効果のほどは不明です。
  • 並列実行
  • Configuration on demand
    Android Studioはデフォルトでチェックされています。
  • preDexLibrariesを無効に(毎回クリーンビルドする環境で無効にする。インクリメンタルビルドする環境では無効にしない)
  • Jack and Jillコンパイラを使う(近未来)
    従来のjavacでコンパイルしdexに変換するという二段階処理を新しいツールjackで一段階処理でこなす新ビルドツールです。
  • gradle 2.4を使う
    Android Studio 1.2はgradle 2.2を使いますが、2.4にするとgradle自身の高速化が図れるようです。

Gradleデーモン

Android Studioからビルドするときはデフォルトで使われます。JConsoleでつないで設定を見ると、VM引数は次のようになっています。

-XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xmx1024m -Dfile.encoding=windows-31j \
-Duser.country=JP -Duser.language=ja -Duser.variant

メモリを多めに与えるとよいかもしれません。-Xmx2048mとか
ファイルエンコーディングはUTF-8にした方がよいかも

コマンドラインからビルドするときは、デーモンを有効にしておくとよいでしょう($HOME/.gradle/gradle.properties)。

インクリメンタルビルド

モジュールのbuild.gradleに追記

android {
  ...
  dexOptions {
    incremental true
  }
}

install-01.png 表示 (38.4 KB) 高橋 徹, 2015/04/15 06:30

install-02.png 表示 (30 KB) 高橋 徹, 2015/04/15 06:30

install-03.png 表示 (34.7 KB) 高橋 徹, 2015/04/15 06:30

install-04.png 表示 (31.9 KB) 高橋 徹, 2015/04/15 06:30

install-05.png 表示 (31.8 KB) 高橋 徹, 2015/04/15 06:30

install-06.png 表示 (26.5 KB) 高橋 徹, 2015/04/15 06:30

install-07.png 表示 (34.5 KB) 高橋 徹, 2015/04/15 06:30

setting-02.png 表示 - Theme setting (51.9 KB) 高橋 徹, 2015/04/15 09:38

haxminstall-1.png 表示 (74.8 KB) 高橋 徹, 2015/04/29 11:57

クリップボードから画像を追加 (サイズの上限: 1 GB)