Help us understand the problem. What is going on with this article?

Hyper-VでサクサクAndroidエミュレータを使おうと思ったらハマったはなし

More than 1 year has passed since last update.

AndroidエミュレータはHyper-Vに対応しているはず

Android EmulatorはHyper-Vが有効なマシンでは動かない、という話は、今となっては昔の話...のはず。

Hyper-VでサクサクAndroidエミュレータを使おう」という記事を読んで、なにも難しいことはなさそうだし、VirtualBoxをやめてHyper-Vに移行してもいいかな、と思った。1

ところが、試してみたところ、私の環境では、なかなかうまくゆかずハマってしまった。

Hyper-VでAndoirdエミュレータが動く条件は?

いろいろしらべてみたところ、このAndoird Studio公式のHyper-Vでも動作できるうようになったエミュレーターは、もともとはマイクロソフトがVisual Studio 2017で先行してリリースされていたエミュレーターのオープンソースとしての貢献をもとに作成されたものらしい。

https://android-developers.googleblog.com/2018/07/android-emulator-amd-processor-hyper-v.html

※ この記事によれば、Intelマシンでは引き続きIntel HAXMが使ったほうがベストであるが、従来は使えなかったAMDのCPUや、その他の理由でHyper-Vを使っている場合でも動作できるようになりました、的な感じみたい。

で、先行するマイクロソフトのHyper-Vで動作するAndroid Emulatorの条件は、こちらに詳しく書かれている。

https://blogs.msdn.microsoft.com/visualstudio/2018/05/08/hyper-v-android-emulator-support/

1. Windows 10 April 2018 Update (バージョン 1803) 以降

Windows10のバージョンの確認方法

※ いまどきは1803以降にはなっているはず。

2. Android Studio 3.2, Android Emulator v27.3.8以降

SDK → SDK Toolsタブでエミュレータのバージョンを確認。

2019-02-04.png

※ 原因がよく分からなかったので、Android Studio3を何回かインストール・アンインストールを繰り返してしまった。基本的には、ここで バージョン27.3.8以降 となっていれば問題なかったようだ。

3. Hyper-V & Windows Hypervisor Platform が有効なこと

ここがハマりポイントだった。

Hyper-Vを有効にしただけでダメだったのである。

Windowsの機能.png

Windowsハイパーバイザプラットフォームも有効にしなければならない。

結論

実は元記事でも、ちゃんと書いてありました。

Hyper-V とWindows Hypervisor Platform にチェックをつけてOKを押します。

画像だけ見て、本文をよく読んでおりませんでした。

※ 「Windows Hypervisor PlatformによるアクセラレーションでAVDを動かす」の記事によると、むしろ、「Hyper-V」よりも「Windowsハイパーバイザープラットフォーム」のほうが重要っぽいようです。

※ また上記記事によると、Intel HAXMとWHPX(Hyper-V)とのパフォーマンスを比較したところ、軒並み、Hyper-Vの成績が低いので、公式アナウンスどおり、Intel CPUを使っていてHyper-Vを使いたい理由がないのであれば、従来どおり、Hyper-VではなくHAXMで使ったほうがいいみたいではある。

★★ しかしながら、Windows10でHyper-Vが有効でdocker for windowsがつかえている環境で、しかし、Windows Hypervisor Platformが有効になっていないマシンでも、Android Emulatorが動くマシンも見つけてしまった。これは昨年買ったIntel Core i5-7200UのノートPCで、今回動作しなかったのは5年以上前のIntel Xeon E3-1230 v2のマシンなので、そのあたりCPUの違いとかあるのかもしれない? ★★

余談

Android Emulatorが動かない、でいろいろ検索したら

  • どうしても動かないのであれば、x86ではなくARMイメージでエミュレートさせれば(劇遅だけど)動くよ?みたいなアドバイスがあって、そうゆう手もあるのか、と勉強になりました。

以上、おわり


  1. Docker for Windowsを試したくなったため 

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした