Androidエミュレータは、デフォルトで使っていると重いです。
そんなときは、この設定をしたらかなり高速になります (起動時間120秒→20秒!)
参考: Androidエミュレータは遅い!重い!!Intel x86設定で高速化して使うべし
ただ、こちらの設定しても何だか遅い場合は、途中で設定を間違っている可能性があります。
The memory needed by this VM exceeds the driver limit
その設定が間違っているかは、こちらのエミュレータ起動時に立ち上がるコンソールを見ているとわかります。
こんな感じで、
「emulator: The memory needed by this VM exceeds the driver limit.
HAX is not working and emulator runs in emulation mode」
と表示されたときは、設定が間違っています。
ここを読んでみると、
「このエミュレータ立ち上げるには、メモリが足りてないですよ。
HAXは動きません。エミュレータは普通のモードで起動します」
といった感じでしょうか。
メモリ量の設定
メモリ量の設定は2ヶ所あります。
- HAXMインストール時に設定
- エミュレータ作成時に設定
HAXMインストール時に設定
HAXMインストールのとき、こんな画面出てきたの覚えてますか?
この「Memory Limit」で設定したメモリ量を覚えておいてください。
このメモリ量でエミュレータを設定する必要があるからです。
もしわからない場合は、HAXMインストーラをもう一度立ち上げ、インストールしなおしてみてください。
エミュレータ作成時に設定
そして、エミュレータの設定をするときに、
「Memory Options:のRAMの欄」
の設定をお忘れなく。
ここの値を、HAXMインストール時に設定したメモリ量以下に設定する必要があります。
つい「Device」を「Nexus 4」で設定してしまうと、ここのデフォルト値は1907になりますし、「Nexus 5」にすると2048になります。
もしHAXMインストール時に、1024MBとか設定しちゃっているとここでアウトですね。
最新機種っぽい設定をしようとすると、ここのメモリ量が大きくなるようですね。
メモリ量を設定して、エミュレータを起動
これら2ヶ所のメモリ量を適正に設定して、エミュレータを起動。
「HAX is working and emulator runs in fast girt mode」
と表示されていれば設定はOKです!
ちなみに、私はいずれも1,024MBで設定しています。
このメモリ量で、今のところ特に問題はないです。
おわりに
この高速化設定については色々情報があるのですが、私なりにやってみてうまくいった設定や、うまくいかなかった設定を紹介しました。
面倒くさいならHAXMインストール時にメモリを大量に割り振ればいいのですが、もしそれがスワッピングの現況になったら、高速化の意味がないですからね。
せっかく高速化設定したのだから、ちゃんと動いて欲しいですよね〜 ( ̄▽ ̄)
関連記事:
- Androidエミュレータは遅い!重い!!Intel x86設定で高速化して使うべし
- Android実機で開発中のアプリを実行する方法
- MacでAndroidアプリ開発!「Android Studio」を使ってみる 〜その3 Androidエミュレータ作成、アプリ起動〜
関連動画:
元大手電機メーカのシステムエンジニア。
詳しくはこのサイトについての「サイト管理者について」をご覧ください。