概要
AndroidのエミュレーターであるNox PlayerとHyper-Vを共存させる方法について紹介します。
環境
- Windows 11 22H2
- Nox Player 7.0.2.5002
Nox PlayerとHyper-Vについて
パソコンでスマートフォンやタブレットで提供されるアプリを利用する場合、元からパソコンに対応している場合は、何も問題はないのですが、パソコン向けにアプリが提供されていない場合は、一工夫が必要です。
そこでよく試されるのがAndroidをパソコン上で実行できるエミュレーターを用いて、そのエミュレーター上でアプリを動かすというものです。
今回、私はスマートフォン向けのゲームアプリをWindowsのパソコンで実行しようとして、Nox Playerというものを使うことにしました。しかし、私の利用している環境と相性が悪いと分かりました。
相性が悪い原因はエミュレーターを動かす際に、WindowsのHyper-Vという仮想化機能を利用しているのが原因です。今回のエミュレーターを実行するというのは、WindowsなどのOS上で仮想的にAndroidを実行するということですので、Windowsが元から持っている仮想化機能と共存させるのは難しいようです。
Hyper-Vの機能を無効化してしまえば、問題は解決するのですが、Hyper-VをWindowsのWindows Subsystem for Linux(WSL、WSL2)という機能で利用しているため、この手段は取りたくありません。
そこで、ここではNox PlayerなどのAndroidエミュレーターとWSL2などで使われるHyper-Vを共存して実行する方法を紹介します。
共存方法
私が最新のNox Playerなどで試したのですが、Hyper-Vを有効化した状態でインストールすることはできませんでした。無理矢理インストールしようとしても、エラーメッセージを出してインストールに失敗したり、インストールに成功したように見えても仮想化の機能であるVT-Xが有効化されていないというメッセージが表示されて、正常にエミュレーターが起動しなかったりしました。
実は、Nox PlayerにはHyper-Vを実行している環境でも動くバージョンが提供されています。これは、あくまでも特定のバージョンだけでHyper-Vと共存できるというものです。記事を書いている2022年11月時点では、Nox Player 7.0.2.5002のみが対応しています。
次の方法をすることで簡単にNox PlayerとHyper-Vを共存させることができます。Nox Player 7.0.2.5002を上記のURLからダウンロードしてインストールします。
これだけで、終了です。
実際に動かしてみると
このような方法で、Nox PlayerとHyper-Vを共存することに成功したのですが、実際にNox Playerを動かしてみると、動作がとても重く、あまり使えるものではありませんでした。
ちなみに私は試していませんが、ゲームなどのCPUやメモリをたくさん使うようなものであれば、まともに使えないかもしれません。
そのため、現在は諦めてHyper-Vを無効化して利用しています。Hyper-Vを無効化して利用しているため、WSLは使えなくなりました。そこで、今はVirtualBoxという仮想化ソフトを使っています。あくまでもWindowsの機能の一つであるHyper-Vと競合をおこしているようですので、この方法で回避することができます。
さいごに
せっかくNox PlayerとHyper-Vを共存できたのですが、私の使用した感想として、満足に使えるものではありませんでした。とても残念です。