前書き
体系立てて説明するのが難しいので、自分がハマった現象と対策を書いておきたいと思います。
- (1)そもそもエミュレータが起動画面で一生固まる
- (2)起動はするが、ディスクが壊れてる的なことを言われる
- (3)起動はするが、「error : Failure [INSTALL_FAILED_NO_MATCHING_ABIS]」と言われる
- (4)起動はするが、「メインのアクティビティがなくてうんたらかんたら…」と言われる
なお、大前提として、標準で定義されている「Android_ARMv7a」は使わず、「Android_Accelerated_x86」を使います。そうしないと遅くて使い物にならないからです。
Xamarin で開発している皆さまの参考になれば幸いです。
ハマった現象
(1)そもそもエミュレータが起動画面で一生固まる
これは何故起こっていたのかいまいちよく分からないのですが、結論としては、
- ~/.android/ 以下を削除
- ~/Library/Developer/Xamarin/ 以下を削除
- VisualStudio for Mac のインストーラーから Android サポート関係を再インストールする
これで直りました。なお、ARMv7a で起動していると、ちゃんと動いているんだけど死ぬほど遅くて固まっている様に見えてしまう事もある様です。どこかの記事では5分くらい起動にかかったという記事もありました。CPU の具合とか見ててもあまり分からないので注意した方がよさそうです。
ちなみに私は Mac Pro で 3時間くらい待っても起動しなかったので、そういう問題ではないと思います(笑)
(2)起動はするが、ディスクが壊れてる的なことを言われる
いったんユーザーデータを消去する必要がある様です。
- VisualStudio -> ツール -> Google Emulator Manager -> (対象のバーチャルデバイスを選択) -> Start
- 出てきたダイアログで、 Wipe User Data にチェックを入れて起動
これで直りました。
(3)起動はするが、「error : Failure [INSTALL_FAILED_NO_MATCHING_ABIS]」と言われる
バーチャルデバイスとして「Android_Accelerated_x86」を選択している時にこのエラーが出る時は、下記の様に、サポートされる AIB として x86 を追加します。
- VisualStudio 上の Android プロジェクトを右クリック -> オプション
- 出て来たダイアログで下記の様に x86 にチェックを入れる
これで直りました。
(4)起動はするが、「メインのアクティビティがなくてうんたらかんたら…」と言われる
ログを残しておらずどういうメッセージだったか忘れてしまったのですが…メインのアクティビティがなくてうんたらかんたらと言われていたのですが、いったんプロジェクトをクリーンしてから再度ビルドしたら直りました。