Andoroidエミュレータをターミナルから起動する

今日はAndroidエミュレータの起動方法についてのお話です。

Android Studioをインストールすると、自動的にAndroidエミュレータもインストールされますが、Android Studioを起動してからじゃないとエミュレータを起動できません。

でも、ターミナルから起動する方法もあります。

エミュレータはAVDやAndroid Virtual Deviceやシミュレータなど色々な呼び方がありますが本記事ではできるだけエミュレータと言います。

まず準備、エミュレータの作成

Android Studioをインストールしたらすぐに起動して、適当なプロジェクトを作成します。

それから [Tools] > [Android] > [AVD Manager] でAVD Managerを開きます。

そこで適当なバーチャルデヴァイス(エミュレータ)を作成します。
エミュレータに名前を付けられますが、名前にはスペースを入れないでください。
スペースを入れたいならアンダースコアで繋ぐなどしてください。

作成したらAndroid Studioは閉じます。

それからANDROID_HOMEのパスを通します。
詳細は下記を参照してください。

windowsの場合
https://hlplus.jp/android/studio/

Macの場合
https://qiita.com/NaokiIshimura/items/5020b7b65e4e0daa3c1a

起動

Windowsならcygwinかコマンドプロンプト、Macならターミナルを開いて下記のコマンドで起動します。

1
2
3
4
5
6
7
# AVD(エミュレータ)のリストを表示
$ $ANDROID_HOME/tools/emulator -list-avds
## 登録されている端末が表示される
Nexus5

# エミュレータ起動 端末名に@を付ける
$ $ANDROID_HOME/tools/emulator @Nexus5

オプションをつけて起動

下記のコマンドはオプションを付けての起動です。

コールドブートは結構使います。
エミュレータは起動しっぱなしにすると結構おかしくなります、そのまま再起動してもおかしい状態を引き継いでしまうことが多いです。
その場合はコールドブートです。

1
2
3
4
5
6
7
8
9
## ファイル書き換え可能な起動?
$ $ANDROID_HOME/tools/emulator @Nexus5 -writable-system

# GPUの選択
# ホスト(Windows)のGPUを使用
$ $ANDROID_HOME/tools/emulator @and_device -gpu host

# コールドブート
$ $ANDROID_HOME/tools/emulator @and_device -no-snapshot-load

再起動

下記のコマンドで再起動できたはずですが、$ adb rootは必要ないかもしれません。

1
2
3
4
5
# 再起動
$ adb root
$ adb remount
$ adb shell stop
$ adb shell start

AndroidエミュレータはPC上でAndroidが動くので結構面白いです。

GooglePlayで普通にアプリもインストールできるのでゲームとかもできちゃいます。
普段はiPhoneしか使わない人もやってみると面白いはずです。