AndroidStudioの端末エミュレータが起動しない時のチェックポイント
AndroidStudioの端末エミュレータが起動しない時のチェックポイント
一口に端末エミュレータが起動しないと言っても、全く起動しない場合とandroidロゴが表示されるまでは進むがそこで止まってしまいホーム画面が表示されない場合がある。
1)CPUがHAXMを実行できるか。
HAXMインストール時にもチェックされるが、
${ANDROID_SDK_ROOT}/tools/emulator -avd {AVD名}
でコマンドでエミュレータを起動して次のようなワーニングが表示される場合はCPUが対応していない。
emulator: WARNING: Host CPU is missing the following feature(s)
Hardware-accelerated emulation may not work properly!
2)AVDのRAMサイズがHAXMのmemory limitを超えていないか。
${ANDROID_SDK_ROOT}/tools/emulator -avd {AVD名}
を実行してエミュレータをコマンドから起動するとエラーやワーニング内容を見ることができる。
HAXM Memory Limitを超えている場合はワーニングメッセージが表示される。
AVD名は次のコマンドで確認できる。
${ANDROID_SDK_ROOT}/tools/emulator -list-avds
HAXM Memory Limitは次のコマンドで設定変更できる。
sudo $ANDROID_SDK_ROOT/extras/intel/Hardware_Accelerated_Execution_Manager/silent_install.sh -m 2048
3)AVD Managerで作成したAVDのSystem Imageがx86_64でないか。
AVDのSystem Imageはx86、x86_64、x86 GoogleAPIs、x86_64 GoogleAPIsの4通り選択できるが、このうちx86_64はHAXMで実行できない場合があるので、x86で作成すること。
4)次の二つの環境変数を/.bash_profileに定義しているか。
export ANDROID_HOME=/Users/{ユーザ名}/Library/Android/sdk
export ANDROID_SDK_ROOT=/Users/{ユーザ名}/Library/Android/sdk
5)AVDを作成して最初に起動するときは時間がかかる。
端末エミュレータでHAXMを利用してx86バイナリとしてアプリを実行したとしても初めてOSイメージをロードするときは時間がかかる。