エミュレータを実行しようとした際、下記エラーが発生することがあります。
[エラーメッセージ]
Galaxy Nexus API 35 is already running as process 75481
Galaxy Nexus API 35はエミュレータ名としてつけた名前
75481はプロセスID
です。
エミュレータがすでに起動している状態で、
もう一度起動しようとしたときに表示されるエラーとなります。
[方法1]
既存のエミュレータを終了する
macOSなら、ターミナルを開いて以下のコマンドを実行
ps aux | grep qemu
エミュレータ(qemu-system-x86_64など)が動いてるか確認できます。
kill -9 [プロセスID]
動いているようであれば、kill コマンドで終了させます。
[方法2]
Android StudioのAVD Managerからエミュレータを再起動
AVD Managerを開いて、該当のGalaxy Nexus API 35のエミュレータを一度削除して再作成する方法もあります。
[方法3]
.lockファイルの削除
.android/avd/ フォルダの中にある .lock ファイルが残ってると、
エミュレータが「動作中」と誤認識する可能性があります。
~/.android/avd/Galaxy_Nexus_API_35.avd/*.lock
「Galaxy_Nexus_API_35」はエミュレータIDなので、ご利用のエミュレータにあわせてください。
ls *.lock
上記コマンドで.lockファイルを確認します。
例えば
hardware-qemu.ini.lock
multiinstance.lock
などが表示されます。
rm *.lock
上記コマンドで.lockファイルを削除することでエミュレータが起動できるようになります。
[補足事項]
ディスク容量不足
エミュレータは最低でも5GB以上の空き容量が必要のようです。
エミュレータのイメージがMacのCPUアーキテクチャと合ってないケース
M1やM2などのApple Siliconを使ってる場合、
ARMイメージのエミュレータを使わないと起動しないことがあります。
この場合は、AVD Managerで「ARM64」ベースのシステムイメージを選んでみてください。
AVDの再作成
どうしても起動しない場合は、AVDを削除して新しく作り直す方法も視野に入れる方法があります。
AVD Managerで、この例であればGalaxy Nexus API 35を削除して、再度作成するという方法となります。
Android Emulatorのバージョンが古いケース古いバージョンだと不具合がある可能性があります。
この場合は、Android StudioのSDK ManagerからEmulatorを最新版にアップデートすることで解決することがあるそうです。
cold boot(コールドブート)
AVD Managerでエミュレータの右側にある「▼」をクリックして
「Cold Boot Now」を選択すると
完全にリセットして起動する動作を実行してくれます。