Windows Azureモバイルサービスで始めるスマホアプリ開発

第1回Windows Azureモバイルサービスの基礎

Windows Azureモバイルサービスは、その名のとおりモバイルアプリ開発のためのサービスで、Windows、Android、iOS、HTML(Java Script⁠⁠、XamarinおよびSencha Touch用のSDKが用意されており、マルチプラットフォームの開発を容易に行うことが可能です。

なぜWindows Azureモバイルサービスが必要か?

モバイルアプリ開発には主に3つの問題があり、Windows Azureモバイルサービスはそのソリューションです。

モバイルアプリのサービスリリース短期化の問題

昨今のモバイルアプリ開発は従来の開発よりも早いサービスリリースが求められます。さらにモバイルアプリ開発ではクライアントソフト開発に加えて、サーバサイド開発もほぼ必須要件となります。

Windows Azureモバイルサービスならば、サーバサイド開発がほぼ不要になるので、クライアントソフト開発に注力でき、サービスリリースまでの時間が大幅に短縮できます。

開発時間を短縮できる
開発時間を短縮できる

サーバ運用コストの問題

サーバサイド開発にオンプレミスでサーバを用意する場合、サーバ規模をあらかじめ予測する必要があります。さらにサーバを用意するイニシャルコストと、予測した規模に達するまでのランニングコストの両方がかかります。Windows Azureモバイルサービスならば、サーバ規模の拡大・縮小は都度見直しが可能なので予測は不要です。イニシャルコストも無料で、ランニングコストも一定枠まで無料で使用することができます。

マルチプラットフォーム開発の問題

クライアント開発もWindows、Android、iOSのような複数のプラットフォームを同時に開発するケースが増えてきており、それぞれのプラットフォームごとにサーバにアクセスするコードを書くのは非常に大変です。Windows Azureモバイルサービスならば、各プラットフォームにSDKを用意しており、統一されたクラウドへのアクセス方法を提供しています。また、マルチプラットフォーム開発環境であるXamarin、およびSencha Touch、PhoneGap向けのSDKも用意されており、クライアントコードを一つに集約することも可能です。

MBaaSの台頭

Windows Azureモバイルサービスのような、モバイルアプリのバックエンドとして動作するサービスを「MBaaS(Mobile Backend as a Service⁠⁠」と呼びます。

MBaaSは、Windows Azureモバイルサービスのほかにも、ParseKinveyKiiNIFTY Cloud mobile backendがあります。

Windows Azureモバイルサービスの優位性

Windows AzureモバイルサービスをほかのMBaaSと比較した場合、次の利点があります。

サーバサイドにてカスタムAPIを作成することが可能

いくつかのMBaaSはサーバに用意されたAPIしか使用できませんが、Windows Azureモバイルサービスは自分でカスタムAPIを作成することが可能です。カスタムAPIはNode.jsまたは.NET Frameworkで記述が可能です。

Windows Azureの様々なリソースと連携が可能

カスタムAPIだけで実現出来ない要件があった場合、Windows Azureの様々なリソースと連携が可能です。例えば、電子メールを送信したい場合はストアからSend Gridを選択し、毎月25,000通の無料電子メールを利用することが可能です。

さらに例を挙げると、要件上IaaSが必要になりWindows Azure仮想マシンを立ち上げた場合、Windows Azure上の同一ネットワークにあるので、ほかのサービスよりもレイテンシが優位になります。

ロックイン問題の回避

いくつかのMBaaSは独自データベースに格納されるため、別なサービスへの移行が難しい場合があります。Windows Azureモバイルサービスは、Windows Azure SQL データベースをデータストアに利用しているため、別なサービスに移行する場合はWindows Azure SQL データベースの機能を利用してエクスポートすることが可能です。

Windows Azureモバイルサービスについて

機能一覧

Windows Azureモバイルサービスには次の機能があり、一般的なモバイルアプリケーションを作成する時に必要な機能は標準でそろっています。

Windows Azureモバイルサービス
Windows Azureモバイルサービス

アーキテクチャについて

Windows Azure モバイルサービスのバックエンドはNode.jsまたは.NET Frameworkのどちらかが選択可能です。

データストアに利用するWindows Azure SQL データベースが必須となっています。

Twitter、Facebook、Google、MicrosoftアカウントとID連携が可能です。

アーキテクチャ
アーキテクチャ

料金について

Windows Azure モバイルサービスは無料枠があり、API呼び出し500,000回、送信データ転送 5GB以内まで使用可能です。

バックエンドで使用するWindows Azure SQL データベースは別途課金が発生しますが、最初の12ヵ月間は20MBまで無料で使用可能です。

料金の詳細についてはモバイル サービスの料金詳細をご確認ください。

Windows Azureモバイルサービスの始め方

Windows Azureサブスクリプションの購買とアクティブ化を行う

Windows Azureモバイルサービスを利用するためにはWindows Azureサブスクリプションの購買とアクティブ化が必要です。Windows Azure サブスクリプション申し込み Step by Stepを参照してお申し込みください。すでにWindows Azureを使用している方は申し込み不要です。

Windows Azure管理ポータルにてサービスの作成

サブスクリプションが有効になりましたら、Windows Azure 管理ポータルにアクセスし、モバイルサービスを作成します。

新規作成
新規作成
モバイルサービスを選ぶ
モバイルサービスを選ぶ
モバイルサービスの作成
モバイルサービスの作成

[URL]は筆者と異なる文字列を入力する必要があります。また、⁠地域]は日本から最も近い「East Asia」⁠東アジア)を選択するとレイテンシーが少ないのでお勧めです。

データベースの設定
データベースの設定
作成中画面
作成中画面
準備完了を確認
準備完了を確認

数分で「準備中」から「準備完了」と表示が変わることを確認しましたら、クリックします。

モバイルサービスの作成完了
モバイルサービスの作成完了

クイックスタート画面が表示されることを確認できましたら、サービスの作成完了です。

次回はこのクイックスタート画面から、マルチプラットフォーム開発環境であるXamarinを使用して実際にアプリを作成したいと思います。

Windows Azure Webサイトハンズオン+Wordpress
徹底解説セミナー参加無料!

数クリックで瞬時にWebサイトが構築できるWindows Azureをハンズオンで体験! 大阪、福岡、仙台開催

URL:http://resocia.jp/skillup/azure/wp/

おすすめ記事

記事・ニュース一覧