HAXM で Android 仮想デバイスを高速化

ほとんど、Android仮想デバイス(AVD)の高速化 – Yahoo!知恵袋 に書いてある通りなので、自分用にメモとして残しておきます。

私の環境が、

  • Windows 8.1 Pro
  • VMWare Worksitation 10

なので、Hyper-V の機能が使えません。VMWare の仮想の仕組みが Hyper-V と競合するので、あれこれで HAXM Android* – Intel® Hardware Accelerated Execution Manager | Intel® Developer Zone と競合するのかと思っていたのですが、勘違いしていました。Intel CPU の場合は利用できる。AMD CPU の場合は利用できない。という違いですね。Intel VT という仮想化技術で実現しているので、さっくりと VirtualChecker 3.0.1 でチェックしておきます。

image

左上の「Intel VT-X」が Enabled になっていれば OK です…と思ったけど、AMD-V 対応でも Enabled になる?まあ、自分のPCが IntelかAMDぐらいかぐらいは分かるか。

Android エミュレータの「Intel Atom x86」を動かすために、Android* – Intel® Hardware Accelerated Execution Manager | Intel® Developer Zone から、Hotfix for Windows 8.1 only (1.0.7) のほうをダウンロード(Windows 8.1なので)。Android SDK Manager の HAXM は、Windows 8.1 だとクラッシュするそうです(試してません)。

image

「Intel Atom x86」のイメージは、各API に入っています。4.0.3 以降(API 15)以降ですね。

image

Android Virtual Device Manager で、CPU/ABI を ARM から Intel Atom (x86) に変更します。

image

Android Virtual Device Manager で起動する Android を選択して「Start」ボタンを押してエミュレーターを起動。

image

エミュレータ自体は結構なスピードで立ち上がります。

image

で、実際のところ Xamarin.Android からデプロイをしてみると、最初のデプロイに結構な時間がかかるのは同じ模様で。

image

…と、ここまで書いてやっぱりデプロイできず。変だな。で、試しに 4.0.3 (API 15)で Intel Atom で動かすと正常に動きます。私の 4.4.2 のエミュレータの作り方がおかしいのか、後で調べなおそう。

image

API 19 だと ARM でも動かないので、エミュレータの設定がおかしいのかも。試しに 4.3 (API 18)を入れると動くので、現状では API 19 は対応していないのかも。

カテゴリー: Android, Xamarin パーマリンク