スマホアプリを作成する際に、「実機が無ければデバッグができない?」
そんなことはありません。この記事では、実機がなくてもXamarinをデバッグするための仮想デバイスの作成方法について書いていきます。

デバッグをするには仮想デバイスの作成もしくは、実機とPCを繋いでデバッグをするという2パターンがあります。私はAndroidの実機を持っていないので、ここではAndroidの仮想デバイスを作成する方法を紹介したいと思います。
仮想デバイスに使用するAPIの取得方法

まず、Android SDK マネージャーからAndroidのAPIを取得します。
ツール>Android>Android SDK マネージャーからAndroid SDKマネージャーを開きます。そこから、好きなAPIを取得してください。今回は、API23を取得します。
デバッグをする為には、
- 「SDK Platform」
- 「ARM EABI v7a System Image」
- 「Intel x86 Atom System Image」
(64bitのPCではIntel x86 Atom_64 System Image)
をインストールすれば良いにゃ~。

ちょっとよくわかんねーよ!!!

という方は、以下のようにチェックを入れれば、とりあえずは問題ないと思われます。

ここで注意して欲しいのが、最新のAPIであれば何でも良いという訳でもないことだにゃ~。
Androidを持っている人ならわかるとおもうんにゃが、Androidの端末によっては最新のOSにアップデート出来ないことがあるにゃ。

つまり、最新版のAPIで開発している場合、下位互換のない機能が使えてしまう可能性があるということか。
APIの上位互換はされているはずだから、Androidの開発をする際に幅広い端末で動作をするように担保する為には少し古いAPIを使用する必要があるわけだね。

Installを押したら、インストールにチェックをいれた項目が画面に表示されるにゃ。画面右下の Accept Licenseにチェックを入れてインストールするんだにゃ~。
「ARM EABI v7a System Image」とは?

ぬるふふふふ。stack over flowの「アンドロイドでARM EABI v7aシステムイメージを使用するとどうなりますか?」で記述されていますが、浮動小数点の処理やマルチコアに関する動作を行えるようにするもののようです。

具体例を挙げると、double型の計算やLinqで言う、AsPararellやAsync/Awaitといった処理でしょうか。Androidの実機でデバッグする際には、上で挙げた項目をインストールする必要はありません。
「Intel x86 Atom System Image」とは?

「ARM EABI v7a System Image」の高速版のようです。ただ、使用する際に幾つか注意点があります。

まず前提として、インテル® Hardware Accelerated Execution Manager (インテル® HAXM)上でPCが動作していること。

カメラやブラウザがクラッシュする場合や安定性の問題として、 AVD のデバイス RAM サイズとして 1024 を使用するとエミュレーターがクラッシュするなどが報告されています。要は、意図せずアプリケーションが終了してしまうことがある、ということです。よく覚えておいてください。
SDKのインストール時間

インストールの時間、意外と長かったにゃ~

インストールする項目にもよるけれど、30分~1時間ぐらいかかったかな?容量も結構食われちゃうんだよねぇ。んじゃすすめてこー
仮想デバイスの作成方法

仮想デバイスを作成する際には、
ツール>Android>Android SDK マネージャーをクリックするんだにゃ~。
すると、AVD (Android Virtual Device Manager ) Manager が立ち上がります。アンドロイドの仮想デバイスを管理する画面の事だね。
ここで右上の Createを押してみよう。

うにゃにゃ!にゃにやら入力しないといけない項目がおおいにゃ。

とりあえず、以下のようにAVDを作成してみてください。
CPU/ABIで選択できるのは、上記のAndroid SDK Managerでインストールしたものが表示されています。画面と全く同じにならなくても良いので、とりあえず選択して OKを押してください。

そうすると、AVD Managerに「Test AVDが表示されています。」

にゃにゃ。細かいことを気にしなければ、意外と簡単だにゃ~。
作成したAVDでデバッグをしてみよう

デバッグをする際に、どのAVDを使用してデバッグをするかを選択します。ここでは、先ほど作成した「TestAVD」を選択したいと思います。

メニューバーの下に緑色の▶があるにゃ。その右にある▼をおすにゃ。
そうすると、作成されたAVDの一覧がでてくるにゃ。この中から「TestAVD」をえらぶんだにゃ~。

デバッグ時に使用するAVDを選択したら、後は実行をするのみ!
デバッグ>デバッグの開始を選択してください。初回デバッグ時はデバッグに10分~15分ぐらい時間がかかるかもしれませんが、辛抱強く待ってください。
表示されたにゃ~!

無事にデバッグされたね!デバッグを終了させたい場合は、
デバッグ>デバッグの停止をクリックしてください。最後に

ここまで読めば、AVDを使用してAndroidのエミュレータを立ち上げられるようになる!はず!!!

とりあえず、エミュレータだと実行が遅すぎるから、Androidの実機が欲しいんだにゃ~

うん…ほんと、それ。iPhoneに関するデバッグ方法についてはまた別途の記事で纏めたいと思います!
いや~、それにしても、簡単なようで難しいようで、簡単なようで、難しいようで…。お疲れさまでした!
[…] スの作り方は「仮想デバイスの作成方法について」で纏めましたのでご覧ください。 […]