Xamarin 2.0 のインストール と Hello Android
C# で Android OS や iOS や Mac OS のアプリケーションを作成できる Xamarin を使ってみたら、結構便利に使えました。(iOS と Mac OS のアプリ開発には、Mac OS が動いているコンピュータが必要。Android は Windows のみで可能)
ダウンロードしたインストーラを実行して画面の指示に従って数回クリックすると、JDK や Android SDK や Xamarin Studio とか必要な物を自動的にダウンロードしてインストールしてくれます。
インストールはこれだけで終了です。Eclipse を使う時のように、SDK を別々にインストールする必要が無いのでとても楽ちんです。
特別なことをしていなくても、メニューが日本語になっています。ありがたいですね。
「新しいソリューションダイアログ」で、[C#]-[Android]-[Android Application] を選択。
「名前」と「位置」は適当に指定します。
[OK] を押すとソリューションが作成されます。
[実行]-[Start Debugging] を選択します。
「Select Device」ダイアログが表示されるので、ここで使用するエミュレーターを選択してから [Start Emulator] ボタンでエミュレーターを起動させます。エミュレーターの起動にはしばらく時間がかかります。
API_7 とか API_8 とかの API のレベルは Android OS のバージョンごとに決まっていて、Android 2.1 が API_7 、Android 4.1 が API_16 のように対応しています。好きなのを選べば良いです。
エミュレーターが起動しました。
エミュレーターが起動すると「Select Device」ダイアログで、起動したエミュレータを選択できるようになるので、選択して [OK] を押します。
少し待つと、Hello, Android アプリケーションが立ち上がります。
(初回の実行では C# の実行環境なんかをエミュレーターに転送するため、しばらく時間がかかります。2回目の実行からは早くなります。)
ボタンを押すと、押した回数が表示されます。
後でどんなコードで動いているのかを見てみましょう。
あらかじめ Android 端末のメーカーサイトから、使用する端末用の USBドライバーをダウンロードして、PC にインストールしておきます。
Android 端末側で、USBデバッグを有効にしておきます。
USB デバッグを有効にした端末を USB で PC に接続していると、デバイスの選択でエミュレーターと一緒に実機も表示されるようになるので、それを選択するだけで実機で実行出来ます。
動きました。簡単です。
エミュレーターよりさくさく動きますので、実機を持っているなら実機でデバッグしたほうが快適です。
Xamarin Studio のテキストエディタで日本語のコメントを入力する時に、変換中の文字が表示されなくて、ちょっと使いにくい。確定すると表示される。
そのうち改善されるといいなぁ。
C# を少し触ったことがあるなら、Eclipse と Android SDK で Android OS のアプリを作るよりも、とっつきやすいなと思います。開発環境のインストールも Xamarin のほうが手間なく簡単です。
作成できるアプリケーションのサイズが制限される (32KB) かわりに、無料で使用出来る STARTER 版もあるので、気軽に試用してみることができます。
Xamarin Studio のインストール
http://xamarin.com/ のトップページのわかりやすいところに、ダウンロードのリンクがあるのでインストーラーをダウンロードします。この時、名前とメールアドレスと使用目的のアンケートに答える必要があります。
Hello, Android - 新規ソリューション(プロジェクト)の作成
動作テストとして新規のソリューション(Visual Studio でいうプロジェクト)を作成して、実行してみます。
Xamarine Studio を 起動したら、[ファイル]-[新規]-[ソリューション] を選択。特別なことをしていなくても、メニューが日本語になっています。ありがたいですね。
「新しいソリューションダイアログ」で、[C#]-[Android]-[Android Application] を選択。
「名前」と「位置」は適当に指定します。
[OK] を押すとソリューションが作成されます。
Android エミュレーターで実行
すでに Hello, Android アプリケーションが組み込まれていて、なにやらコードが表示されていますが、気にせずこのまま実行してみましょう。[実行]-[Start Debugging] を選択します。
「Select Device」ダイアログが表示されるので、ここで使用するエミュレーターを選択してから [Start Emulator] ボタンでエミュレーターを起動させます。エミュレーターの起動にはしばらく時間がかかります。
API_7 とか API_8 とかの API のレベルは Android OS のバージョンごとに決まっていて、Android 2.1 が API_7 、Android 4.1 が API_16 のように対応しています。好きなのを選べば良いです。
エミュレーターが起動しました。
エミュレーターが起動すると「Select Device」ダイアログで、起動したエミュレータを選択できるようになるので、選択して [OK] を押します。
少し待つと、Hello, Android アプリケーションが立ち上がります。
(初回の実行では C# の実行環境なんかをエミュレーターに転送するため、しばらく時間がかかります。2回目の実行からは早くなります。)
ボタンを押すと、押した回数が表示されます。
後でどんなコードで動いているのかを見てみましょう。
実機で実行
Android 端末側で、USBデバッグを有効にしておきます。
USB デバッグを有効にした端末を USB で PC に接続していると、デバイスの選択でエミュレーターと一緒に実機も表示されるようになるので、それを選択するだけで実機で実行出来ます。
動きました。簡単です。
エミュレーターよりさくさく動きますので、実機を持っているなら実機でデバッグしたほうが快適です。
どちらで実行するかの選択
実行するデバイス(エミュレーター)は [プロジェクト] - [Android Device Target] で選択出来ます。Hello, Android のソースコード
"MainActivity.cs"
namespace test1
{
[Activity (Label = "test1", MainLauncher = true)]
public class Activity1 : Activity
{
int count = 1;
// 以下が実行時に一回呼ばれるブロック
protected override void OnCreate (Bundle bundle)
{
base.OnCreate (bundle);
// Set our view from the "main" layout resource
SetContentView (Resource.Layout.Main);
// Get our button from the layout resource,
// and attach an event to it
Button button = FindViewById<Button> (Resource.Id.myButton);
// ↓ここでボタンのクリックイベントの処理を追加
button.Click += delegate {
button.Text = string.Format ("{0} clicks!", count++);
};
}
}
}
Xamarin Studio のテキストエディタで日本語のコメントを入力する時に、変換中の文字が表示されなくて、ちょっと使いにくい。確定すると表示される。
そのうち改善されるといいなぁ。