AndroidStudioのオススメ拡張機能 9選

# はじめに
この記事は [Android Advent Calendar 2018](https://qiita.com/advent-calendar/2018/android) の19日目です！

個人的に使っていて便利だなと思ったAndroidStudioオススメの拡張機能をまとめました。
AndroidStudioのVerは 3.2.1です。

https://plugins.jetbrains.com/androidstudio

# 拡張機能 9選

## 1. [Android Drawable Importer](https://plugins.jetbrains.com/plugin/7658-android-drawable-importer)
アイコンや画像などをプロジェクトに追加するのが楽になるプラグイン。
プラグインをインストールすると以下の4機能が使えるようになります。

1. AndroidIcons and Material Icons Drawable Import 
    - [androidicons](https://www.androidicons.com/)や[Material Icons](https://google.github.io/material-design-icons/)のアイコンをインポートできる
2. Batch Drawable Import
    - 画像(9-Patchも含む)を選択してサイズを指定してインポートできる
3. Multisource-Drawable
    - 解像度ごとのディレクトリに指定した画像やzipをインポートできる
4. Vector Drawable Importer
    - Vector画像をアイコン選択してインポートできる


### 使い方
右クリック >「New」から各機能が使える
![1.gif](https://qiita-image-store.s3.amazonaws.com/0/299271/88366cd6-c3d5-a229-2153-46d9bb3690e8.gif)
個人的には、`Multisource-Drawable`がzipファイルごとインポートできるので便利でよく使っています。

## 2. [BackgroundImage](https://plugins.jetbrains.com/plugin/72-backgroundimage)
背景画像を設定できるプラグイン。

### 使い方
すべてを検索(Shift キーを 2 度押す)から「background」で検索し「Set Background Image」を選択
![2.png](https://qiita-image-store.s3.amazonaws.com/0/299271/114223da-0ebb-2bf0-863a-a140c6a7412f.png)

あとはお好みで設定
![3.png](https://qiita-image-store.s3.amazonaws.com/0/299271/02f96eae-3f94-e1ce-9927-029736cdb24e.png)
筆者のAndroidStudioにはDroid君を右端に表示してるので、この投稿のキャプチャ画像に所々Droid君が写っちゃってます。見にくくなっていたらすいません。。


## 3. [Atom File Icons IDEA](https://plugins.jetbrains.com/plugin/10044-atom-file-icons-idea)
アイコンを[Atomライク](https://github.com/file-icons/atom)にできるプラグイン。
<img src="https://qiita-image-store.s3.amazonaws.com/0/299271/d857e0b5-7f53-d529-de0f-79532f063e03.png" width="240">

## 4. [ADB WiFi Connect](https://plugins.jetbrains.com/plugin/9717-adb-wifi-connect)
WiFi経由でADB接続するデバイスを管理するプラグイン。
一度WiFi経由でAndroidデバイスにADB接続した端末を保存でき、次回からAndroidデバイスを選んでADB接続できる。

### 使い方
Pluginをインストールすると上部のtool barに起動ボタンが表示されるので
起動ボタンから接続デバイスの管理ができる。
一度ケーブルを使ってADB接続したら、「SAVE」ボタンでDeviceを保存し、後はケーブル無しで
WiFi経由でADB接続できるようになります。
![5.gif](https://qiita-image-store.s3.amazonaws.com/0/299271/faf1fec6-b5e9-df45-6b9c-72be10d75d7c.gif)

## 5. [Android API Level](https://plugins.jetbrains.com/plugin/8121-android-api-level)
Android OS バージョン一覧をダイアログで表示するプラグイン。
シンプルなプラグインですが、パッと思い出せない時に便利です。

### 使い方
ショートカットキーから起動するか、すべてを検索(Shift キーを 2 度押す)から
「Android API Level」を検索して起動。

```
Windows, Linux: Ctrl + Shift + Alt + V
Max: Cmd + Shit + Alt + V
```

![6.png](https://qiita-image-store.s3.amazonaws.com/0/299271/8a11065e-7c86-4819-361c-5ff0f8eb765d.png)

## 6. [CodeGlance](https://plugins.jetbrains.com/plugin/7275-codeglance)
Sublime Textのように画面右にコードマップを表示するプラグイン。

![7.png](https://qiita-image-store.s3.amazonaws.com/0/299271/42b4df05-d2a1-9678-af6b-d41fb4c20b39.png)

## 7. [Android Drawable Viewer](https://plugins.jetbrains.com/plugin/7874-android-drawable-viewer)

解像度毎のリソースを1つのダイアログ上で確認できるプラグイン。

### 使い方
Pluginをインストールするとtoolbarに「Drawable Viewer」が表示されているので
まずは設定から表示するリソースの解像度を設定する。
![8.png](https://qiita-image-store.s3.amazonaws.com/0/299271/57a621e7-224f-40b6-6424-c34594f0d26e.png)

設定した解像度のリソースが一覧に表示されるので、選択すると全解像度のリソースが確認できる。
![9.png](https://qiita-image-store.s3.amazonaws.com/0/299271/c7b1b355-7a9f-d75d-ad23-52e827f7f6a2.png)

## 8. [PermissionsDispatcher plugin](https://plugins.jetbrains.com/plugin/8349-permissionsdispatcher-plugin)

[PermissionsDispatcher](https://github.com/permissions-dispatcher/PermissionsDispatcher)のIntelliJ公式のプラグイン。
必要なパーミッションと用意するメソッドを選択するとコード生成し、
リビルドまで促してくれる。

### 使い方

Activity上で、`Ctrl+Enter`してgenerateポップアップを表示し
「Generate Runtime Permissions...」を選択、後は設定したいパーミッションやメソッド名を設定するだけ。

![a3.gif](https://qiita-image-store.s3.amazonaws.com/0/299271/726957d6-a587-83f3-b878-fbd6496d73d8.gif)

## 9. [Save Actions](https://plugins.jetbrains.com/plugin/7642-save-actions)

ビルド時やファイル保存時にコードフォーマットやimportの最適化を行ってくれるプラグイン。

### 使い方
プラグインをインストールすると、設定画面の「Other Settings」に「Save Actions」のメニューが増えているので、有効/無効の設定やActionを設定する。
設定できる機能としては以下の通り。

```
- インポートの最適化
- ファイルの保存またはショートカット（またはその両方）でActionを実行
- スコープを選択して複数のファイルに対して実行する
- 再フォーマットコード（ファイル全体または変更されたテキストのみ）
- コードの並べ替え（メソッド、フィールドなどの並べ替え）
- 正規表現をサポートするファイルのインクルード/除外
- 任意のファイルタイプ（Java、Python、XMLなど）に対してActionを実行
- プロジェクト毎の設定ファイルが作成される
```

![image.png](https://qiita-image-store.s3.amazonaws.com/0/299271/3591a181-57aa-5c5d-2fa4-ee80caba1ea1.png)