2019/04/03

コマンドラインから Android emulator を起動しようとしたら "Missing emulator engine ..." が出てしまった場合の対処方法

emulator 28.0.25.0 (build_id 5395263) on Ubuntu 18.04


久しぶりにコマンドラインから Emulator を起動してみると以下のようなエラーが。(Android Studio から起動した場合は問題なく起動しています)

```console
`gutter: false;
$ emulator -avd Pixel_2_API_28
PANIC: Missing emulator engine program for 'x86' CPU.
```

調べてみると、2017年3月の v25.3.0 以降、emulator コマンドのパスが変わったらしい2年もコマンドラインから Emulator 起動してなかったのか

> 参考
>
> [Update Your Path For The New Android Emulator Location | Stuart Kent on Software](https://www.stkent.com/2017/08/10/update-your-path-for-the-new-android-emulator-location.html)

確認してみると、確かに `${ANDROID_HOME}/tools/emulator` 以下にパスが通っていました。

```console
`gutter: false;
$ which emulator
${ANDROID_HOME}/tools/emulator
```

というわけで、フルパス指定にしたところ、問題なく起動しました。
パスもアップデートして、問題解決です。

```console
`gutter: false;
$ ${ANDROID_HOME}/emulator/emulator -avd Pixel_2_API_28
```

参考リンクの考察によると、tools 以下のバイナリが問題なのではなく、ディレクトリ構造に起因した問題のよう。 時間ができたら android sdk 等々、クリーンインストールして確認してみよういつになることやら…

0 件のコメント: