LoginSignup
0
0

More than 5 years have passed since last update.

AndroidStudioのエミュが起動しない(VirtualBox環境下だと)・・・だと!?

Posted at

かなり限定的な環境下で起きる現象の話ですが・・・
VirtualBoxでゴリゴリサーバーAPIとか作ってる時に
さー!そろそろアプリ繋ぎこむか!ってなっていざAndroidStudioを起動したら・・・

エミュレータが起動してくれなかった...orz

時の話

'Error while waiting for device'と言う謎のエラー

なんかstackoverflowで同じような事を言っている人がいる・・・

Emulator Not Running on Android Studio

どうやらVirtualBoxでインスタンスが起動しているとエミュが起動しないっぽい・・・

僕らにはまだ、'Genymotion'が...ある!! → あっさり解決ヽ(=´▽`=)ノ

さっくりAndroidStudioのエミュを諦めて、ちょっと遅くなるかもだけど'Genymotion'のエミュを使ってみる事にした。
で、あっさり解決しました!ヽ(=´▽`=)ノ

こんな感じでAndroidStudio起動中にちゃんとエミュが立ち上がります。

ちゃんとデバッグも出来ますね。
(エラーが起きちゃってるのはご愛嬌・・・ほら、こういうのを確認しようと思ってやってたから・・・)

肝心の構築手順

brew-caskでさっくり'Genymotion'を入れちゃいましょう。

[xcodeはインストールされている前提]
xcode-select --install
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew tap caskroom/cask
brew install caskroom/cask/brew-cask
brew cask install virtualbox
brew cask install genymotion

で、ここが肝ですが、'Genymotion'と'AndroidStudio'がみてるADBの場所をちゃんと合わせましょう。

僕は'AndroidStudio'の方のSDKの向け先を、'Genymotion'の方に向けて、ADBのパスを合わせました。

/Applications/Genymotion.app/Contents/MacOS/tools/

'AndroidStudio'の'preferences'から変えられます。

この方法だと、SDKのダウンロードが再度行われるので設定完了まではちょっと時間が掛かります。

エミュからVirtualBoxのサーバを見れるようにしないとそもそも意味がない

ので、忘れずに設定しましょう。
簡単です。
起動中のエミュのhostsファイルを書き換えて、名前とVirtualBoxのIPを書き込んじゃいましょう。

僕のMacのhostsには以下の用にVirtualBoxサーバの名前とIPの紐付け設定がされてます。

cat /etc/hosts

192.168.33.16   fwmhoge.localhost
192.168.33.16   webhoge.localhost
192.168.33.16   apihoge.localhost
...

コレをエミュに上書き

/Applications/Genymotion.app/Contents/MacOS/tools/adb root
/Applications/Genymotion.app/Contents/MacOS/tools/adb remount
/Applications/Genymotion.app/Contents/MacOS/tools/adb push /etc/hosts /system/etc

以上でエミュから'webhoge.localhost'でIP'192.168.33.16'が振られているVirtualBoxサーバに到達出来るようになります。

コレで快適にAndroidアプリ開発が出来るぜー!ヽ(=´▽`=)ノ

 

何方かの参考になれば幸いですm(__)m

Created by 株式会社デジタルクエスト 大野 修平 ( @saimushi )
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0