VisualStudioでスマホアプリが作れる?
ということでさっそく試してみました。
ご参考になればと思います。
必要な環境
- VisualStudio 2017~
(バージョン 15.8 以降) - Xamarin.Android のインストールとセットアップが必要
Xamarin(ざまりん)とは
.NET を使用して、iOS、Android、Windows 向けの最新で高性能なアプリケーションをビルドするためのオープンソースのプラットフォームです。
Microsoftドキュメントより
ようは、これを使えば、Windows上で、AndroidやiOSのスマホアプリが作れるってことのようです。
プログラム言語は、C#のようです。(AndroidStudioはJavaとKotlin)
画面はXAMLなので、AndroidStudioと同じかも。
とりあえず、動かしてみましょう。
Xamarin.Android のインストール
1.Visual Studioインストーラを起動
インストール済みでも、VisualStudioのインストーラを起動します。
2.変更ボタンを押す
インストーラ画面で、「変更」ボタンを押します。
3.[.NET によるモバイル開発]チェックON
[モバイル&ゲーム]項目内の[.NET によるモバイル開発]にチェックを入れます。(Xamarinがどうのこうの書いてある項目です)
これにチェックが入っていることで、「Xamarin.Android」がインストールされます。
チェック後、画面右下隅にある [変更] ボタンを押します。
4.ダウンロードとインストールが実行
ダウンロードとインストールが実行されます。
まぁまぁ時間かかります。
完了したら、「起動」ボタンで、VisualStudioを起動します。
インストーラーは、終了して大丈夫です。
サンプル – Android アプリ(Xamarin)
1.新規プロジェクト作成
新規プロジェクト作成します。
項目は、[C#]-[Android アプリ(Xamarin)]
プロジェクト名は、適当に。「androidapp」
2.テンプレートの選択
アプリのテンプレートは、[単一ビューアプリ]を選択して「OK」ボタンを押します。
プロジェクトが生成されます。
3.再生ボタンを押してアプリ実行
再生ボタンを押してアプリ実行します。
Androidエミュレータが起動し、「Hello World!」のラベルが中央に表示されてます。※エミュレータの設定は任意で。
右下のメールボタンを押すと、「Replace with your own action」のメッセージが下のほうに表示されます。しばらくするとこのメッセージは勝手に閉じます。
右上の「…」のメニューには、「Settings」の項目があります。クリックしても特に何も起きません。
プロジェクトファイル解説
・MainActivity.cs
メイン画面の制御プログラムになります。
・activity_main.axml
メイン画面レイアウトファイルになります。
HelloWorldのテキストはここで定義されているわけではなく、後述のcontent_main.axmlの中に定義されてます。
ここでは、content_main.axmlの画面を挿入しているかたちになってます
・content_main.axml
HelloWorldのテキストが中央に貼りついてます。
HelloWorldのテキストを直したい場合は、このファイルを直す感じです。
[表示]メニューにある「ツールボックス」と「プロパティウィンドウ」は、表示しておくと便利です。
HelloWorldのテキストを選択し、プロパティウィンドウの「Text」には、「Hello World!」の文字列が入っているので、「へろーわーるど」に変えてみます。
テキストが変更され、再生ボタンで実行後も変更後のテキストで動いていることが確認できました。
サンプル – モバイルアプリ(Xamarrin.Forms)
新規プロジェクトの中にクロスプラットフォームの項目があり、これはひとつのプロジェクトでAndroidとiOSの両方を作れるというものです。
1.新規プロジェクト作成
新規プロジェクト作成します。
項目は、[C#]-[モバイル アプリ(Xamarin.Forms)]
2.テンプレートの選択
「空白」選択し、「作成」ボタンを押します。
プロジェクトが生成されます。
3.再生ボタンを押してアプリ実行
再生ボタンを押してアプリ実行します。
Androidエミュレータが起動し、「Welcome to Xamarin.Forms!」のラベルが表示されてます。
4.停止ボタンを押して終了
今度はスタートアッププロジェクトに「xamarinforms.iOS」を選択して、再生ボタンを押してアプリ実行してみます。
Macとリモート接続しないとシミュレータが動かせないみたい。
手元にMacが無いので断念しました^^;
で、ぶっちゃけどう?
感想
VisualStudioから育った人から見れば、使いやすいかも。
C#でプログラムが組めるのはかなりうれしいですね。
何より、Androidだけでなく、iOSも開発できるのが大きいと思います。
新規プロジェクトの中に、クロスプラットフォームもありましたので、1つのプロジェクトファイルでAndroidとiOSのアプリを開発できるのは魅力的です。
AndroidStudioと比べて
画面レイアウトの編集はAndroidStudioと同じイメージ。
Windows Formsのレイアウト編集をイメージしていたのですが、違ってました。
AndroidStudioで開発したほうがいい?
ライブラリはさすがに100%は網羅できていないようです。(Microsoftドキュメントによると80%との事)
クロスプラットフォームとなると、さらにパーセンテージは低くなるようです。
触ったばかりなので具体的にはわかりませんが、細かい部分でAndroidStudioでしか実現できない機能もあるというお話になるのでしょうね。
常にOSやSDKがアップデートされますから、Xamarin側が追い付かなくなることもありえるかもしれません。
それでも開発実績はあるようなので、そんなに複雑でないアプリ・簡単なアプリでしたら、心配はいらないレベルかなと思われます。
AndroidStudioも使っていた上での感想なので、なんだかんだでAndroidStudio部分の勉強も必要になってくるでしょう。
細かい処理を行いたいときは、AndroidSDK側とXamarin側の両方を調べないといけなさそうなので、この点もどう思うかにもよると思います。
(iOSなら、結局のところxcodeの知識も必要になりそう)
Xamarinは流行ってない?
情報量は少ない印象。
あっても英語のサイトばかり。
英語は苦手です・・・。
最後に
で、結局どうなの?という話でいうと・・・
どうでしょう?^^;
一見、便利そうと思いつつも、面倒なことになりそうな印象も備わっている感じがしました。
自分の開発スタイルに合わせて判断したほうがよいでしょう。
使いやすさ・便利さ等は、結局のところ、行き着く先は「慣れ」によるところがありますからねぇ。
ちなみに私は、AndroidStudio/xcodeそれぞれの開発でよいかなと思いました。(ぼそっ
最後まで見てくれてありがとう。
※Visual Studioの更新メッセージが表示された場合は、先に更新しておきましょう。