IntelliJ IDEA×Kotlin×GradleでAndroidアプリの開発環境構築(Mac)

## 環境

- OS：macOS High Sierra 10.13.1
- Java：9.0.4
- IntelliJ IDEA：2018.1
- Android SDK Tools：26.0.1

## 開発環境構築

### Java(JDK)のインストール

JDKは様々なバージョンが存在するため、jEnvを使ってインストールするのが望ましいです。
[こちらの記事](https://qiita.com/uhooi/items/9a6747084bcfd4df07a6)を参考に行ってください。

### ビルドツール(Gradle)のインストール

Gradleも様々なバージョンが存在するため、SDKMANを使ってインストールするのが望ましいです。
[こちらの記事](https://qiita.com/uhooi/items/c9caa9a9ed6c934a789b)を参考に行ってください。

### Kotlinのインストール

Gradleと同様、SDKMANを使ってインストールするのが望ましいです。
上記の記事を参考に行ってください。

### Android SDKのインストール

※IDEにAndroid Studioを使う方はAndroid SDKが含まれているので、この手順は不要です。

[こちらの記事](https://qiita.com/uhooi/items/e94575b18e785c747386)を参考に行ってください。

### IDE(IntelliJ IDEA)のインストール

~~最初はAndroid Studioを使おうと思っていたのですが、PyCharmが使いやすかったので同じJetBrainsが提供しているIntelliJ IDEAを使うことにします。
KotlinもJetBrainsが開発している言語なので相性は抜群なはずです。~~
Android StudioもIntelliJ IDEAとほぼ変わらないので、素直にAndroid Studioを使うべきです。。

以下へアクセスし、Communityの「DOWNLOAD」をクリックしてインストーラをダウンロードします。
https://www.jetbrains.com/idea/download/#section=mac

<img width="865" alt="スクリーンショット_2018-04-04_21_28_18.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/7d7e5bcf-f23c-ddf5-9040-f173ce5ee80f.jpeg">

## IntelliJ IDEAの初期設定

IntelliJ IDEAを起動すると、以下の画面が表示されます。
初めてインストールするため、「Do not import settings」を選択して「OK」をクリックします。

<img width="643" alt="スクリーンショット_2018-04-04_23_44_17.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/b7b25f4e-6f3f-8b42-f50f-bde4730dc706.jpeg">

このまま「OK」をクリックします。

<img width="712" alt="スクリーンショット_2018-04-04_23_47_25.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/af0d3f25-d83b-3f3a-b442-48ec7cff3696.jpeg">

UIテーマの選択画面が表示されます。
私は明るい方が好みなので「Light」を選択して「Next: Keymaps」をクリックします。

<img width="917" alt="スクリーンショット_2018-04-04_23_48_20.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/14ba9385-813f-3ec8-4710-5c9449e89448.jpeg">

キーマップの設定画面が表示されます。
どちらが使いやすいかはわからないのでこのまま「Next: Launcher Script」をクリックします。
(きっとVimキーマップのプラグインがあるだろう。。)

<img width="917" alt="スクリーンショット_2018-04-04_23_51_38.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/e4f48263-77b2-f294-93f2-0cde844f9bf5.jpeg">

このまま「Next: Default plugins」をクリックします。

<img width="917" alt="スクリーンショット_2018-04-04_23_56_03.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/c4cdc4a3-36bb-89d9-6e01-ff1db42a3527.jpeg">

このまま「Next: Featured plugins」をクリックします。

<img width="917" alt="スクリーンショット_2018-04-05_0_00_26.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/a08b431e-80bd-d1e6-8570-06f37d82128e.jpeg">

「IdeaVim」の「Insatall and Enable」をクリックしてインストールします。
(やっぱりあった！)

<img width="917" alt="スクリーンショット_2018-04-05_0_01_27.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/9f94ee35-46da-a60e-2da1-8bc17d8269fa.jpeg">

インストールが完了したら「Start using IntelliJ IDEA」をクリックします。

<img width="917" alt="スクリーンショット_2018-04-05_0_02_02.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/9b87af4f-58ae-ccfc-1ccc-8aceddcda40a.jpeg">

「YES」をクリックします。

<img width="444" alt="スクリーンショット_2018-04-05_0_06_15.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/138245/e311bb49-ab2f-20f4-d318-21c61de02765.jpeg">

やっとウェルカム画面が表示されました！

<img width="778" alt="スクリーンショット 2018-04-05 8.21.11.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/d7934ef6-6116-cee0-476c-21c8aa71e2eb.png">

## IntelliJ IDEAの設定

[PyCharmの設定](https://qiita.com/uhooi/items/b2f3a121b2e9dac6a256#pycharmの設定)と同様にします。

### 空白行のスペースを可視化する

∵空白行にスペースを含めたくないため

Preferences…
Editor > General > Appearance
Show whitespaces:OFF→ON
Trailing以外OFFにする

### 補完時に大文字小文字を区別しない

Preferences…
Editor > General > Code Completion
Code Completion
Case sensitive completion:First letter→None

### 変更したタブにアスタリスクを付ける

Preferences…
Editor > General > Editor Tabs
Tab Apperance
Mark modified tabs with asterisk:OFF→ON

### 自動保存を無効にする

Preferences…
Appearance & Behavior > System Settings
Synchronization
Synchronize files on frame or editor tab activation:ON→OFF
Save Files on frame deactivation:ON→OFF

## IntelliJ IDEAにSDKを追加

### JDKの追加

Configure > Project Defaults > Project Structure

<img width="830" alt="スクリーンショット 2018-04-06 23.26.51.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/fb8e910c-c36d-fa5a-55f7-83def914da00.png">

Platform Settings > SDKs
「+」をクリックし、「JDK」を選択します。

<img width="931" alt="スクリーンショット 2018-04-06 23.35.20.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/20ec7cb6-b315-0f5e-7ab2-46b8e459d7f4.png">

JDKのフォルダを選択し、「Open」をクリックします。

<img width="1031" alt="スクリーンショット 2018-04-06 23.37.57.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/e675212e-ddcc-555b-3e6e-249ffe5b50b9.png">

JDKが追加されました。

[こちらの記事](https://qiita.com/uhooi/items/9a6747084bcfd4df07a6)でJDK 7〜10をインストールしているので、全て追加しておきます。

<img width="1031" alt="スクリーンショット 2018-04-06 23.42.22.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/2188ed4e-c53d-4f64-51f6-cb93c39c065c.png">

### Android SDKの追加

JDKと同様の手順で「Android SDK」をクリックします。

<img width="933" alt="スクリーンショット 2018-04-06 23.34.09.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/4d374961-cf18-6317-bb3a-28cd0345970f.png">

先ほど作成した「android-sdk」フォルダを選択し、「Open」をクリックします。

<img width="1031" alt="スクリーンショット 2018-04-06 23.34.24.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/0782edc9-a63b-35da-fc04-58f1d8fd16bc.png">

Java SDKとBuild targetを選択し、「OK」をクリックします。

<img width="359" alt="スクリーンショット 2018-04-06 23.44.17.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/091a078f-9235-3c9c-0c16-eb9bf90f071b.png">

今回はJDK 8, Android API 27を選択しました。

Android SDKが追加されました。
「OK」ボタンをクリックします。

<img width="1031" alt="スクリーンショット 2018-04-06 23.46.52.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/b37a3b70-2ec2-b7f4-2b8a-a240e555a331.png">

### デフォルトのSDKの設定

JDKの追加などと同様の手順で「Default Project Structure」画面を表示し、「Project SDK」で先ほど追加したAndroid SDKを選択して「OK」をクリックします。

<img width="929" alt="スクリーンショット 2018-04-12 22.45.30.png" src="https://qiita-image-store.s3.amazonaws.com/0/138245/38ae0c65-7d06-a29f-9c6d-e4e3845d1e98.png">

これでIDEの設定は完了です。

## おわりに

Androidアプリの開発環境は構築が大変でした。
iOSアプリの開発環境だったらApp StoreからXcodeをインストールするだけなのに。。

次はプロジェクトの作成方法を紹介します。

## 参考リンク

- [【2018年版】macでAndroid開発環境を構築するための４つのこと - Qiita](https://qiita.com/Alex_mht_code/items/5fd8eed6c4b96091d581)
- [Android開発入門 - 公式ヘルプ | IntelliJ IDEA](https://pleiades.io/help/idea/getting-started-with-android-development.html)
- [Mac OS XにIntelliJ IDEAを導入してAndroid開発の環境を整える - あかんわ](http://b0npu.hatenablog.com/entry/2016/07/09/182611)