Yuta Watanabe's Blog

開発周りと、その他諸々

Microsoft Azure Mobile Services を JavaScript および .NET バックエンドで作成してみる

こんにちは。

マイクロソフトの渡辺です。

モバイル アプリ向けのバックエンドサービスである、Microsoft Azure Mobile Services。いわゆる、Backend as a Service と呼ばれる形のクラウドサービスです。

f:id:yuwata:20140820131358p:plain

モバイル アプリに必要となる オフライン/オンラインのデータ同期、通知や認証といった機能を簡単に用意/構築することができます。iOS/Android をはじめ様々なプラットフォーム/フレームワークから利用することができ、SDK/ライブラリが充実しているのも大きな特徴の1つです。

また、実装方法に様々な選択肢があるのはクライアント側だけではありません。Microsoft Azure Mobile Services では、バックエンド側の実装についても、JavaScript または .NET を開発者が選択できます。使い慣れた技術で、カスタム API の作成をはじめとしたカスタマイズを、バックエンド側に加えていくことで、より柔軟な Backend as a Service として Mobile Services をお使いいただけます。

今日は、この Microsoft Azure Mobile Services を作成する流れを見ていきたいと思います。Microsoft Azure は 1か月間の無料試用を提供していますので、皆様もぜひお試しください。

新規にモバイルサービスを作成する

それでは、さっそく新しくモバイルサービスを作成してみましょう。Microsoft Azure の管理ポータル左下にある新規ボタンから、モバイルサービスの作成を選択します。

f:id:yuwata:20140820132206p:plain

f:id:yuwata:20140820132211p:plain

すると、新しいモバイル サービスを作成するダイアログが表示されます。ここで、URL や使用するデータベース、リージョンを選択するとともに、バックエンドを JavaScript にするか、.NET にするかを決めます。ここでは、"JavaScriptBackendService" という URL で JavaScript バックエンドのモバイル サービスを作成してみます。

f:id:yuwata:20140820132429p:plain

そして、この画面ではもう1点、プッシュ通知の詳細設定というチェックボックスがあります。

モバイルサービスでプッシュ通知を行う際は、Microsoft Azure の通知ハブを利用します。この通知ハブは、モバイル サービスとは別に独立したサービスです。通常はこのチェックボックスはオフのまま進み、通知ハブはモバイル サービスの作成時に自動的に合わせて作成されます。作成された通知ハブの設定は、モバイル サービスの管理画面の中から行えますので、独立したサービスとしての通知ハブを意識する機会はあまりないかもしれません。

f:id:yuwata:20140820132436p:plain

もし既存に作成してある通知ハブを利用する場合や、通知ハブの名前を自分で決めたい場合は、チェックボックスをオンにして先に進みましょう。通知ハブで使う名前空間やハブ名を設定することができます。

f:id:yuwata:20140820132414p:plain

このあとは、データベースの設定です。

新しい SQL データベースサーバーを作成するか、既存のサーバを選択して、ログイン名/パスワードを入力します。

f:id:yuwata:20140820132419p:plain

必要に応じて、"データベースの詳細設定を構成します"のチェックボックスをオンにし、詳細設定画面へと進んでください。照合順序をし指定できます。

f:id:yuwata:20140820132432p:plain

モバイル サービス作成の設定が全て終わった後は、最後に右下のチェックボタンを押せば、作成が開始されます。

f:id:yuwata:20140820132440p:plain

f:id:yuwata:20140820132410p:plain

ここでは、JavaScript バックエンドのモバイルサービスとして、JavaScriptBackendService を作成しました。同様の手順で、.NET バックエンドのモバイルサービスとして、DotNetBackendService も作成します。

f:id:yuwata:20140820132424p:plain

次回の記事では、作成したモバイルサービスの、JavaScript バックエンド、.NET バックエンドによる違いについて見ていきたいと思います。