Windows Azure Mobile Services:iOSアプリ、Facebook/Twitter/Google ID、メール、SMS、Blob、 Service Busなどをサポート
数週間前、クライアントやモバイルアプリケーションと、スケーラブルなバックエンドのクラウドとの接続が非常に簡単にできるという、Windows Azure Mobile Servicesについてブログ投稿しました。
今回、そのWindows Azure Mobile Servicesに多数の新機能が実装されました。主な機能は以下のとおりです。
- Mobile ServicesとiPhoneおよびiPadアプリとの接続を可能にしたiOSサポート
- Mobile ServicesとFacebook、Twitter、Googleとの認証サポート
- Mobile ServicesでのBlob、Table、Queue、Service Busサポート
- Mobile Servicesからのメール送信(SendGridとのパートナー関係)
- Mobile ServicesからのSMSメッセージ送信(Twilioとのパートナー関係)
- アメリカ西海岸エリアのMobile Servicesデプロイ機能
すべての機能は現在本番環境にあるので、すぐに利用可能です。以下は各機能の詳細になります。
iOSサポート
Windows Azure Mobile ServicesとiOSベースのデバイス(iPhoneおよびiPad)を接続するサポートを今週から開始します。他のWindows Azure SDKのように、GitHub上でオープンソース(Apache 2.0)ライセンスの下、利用可能なネイティブiOSライブラリを提供します。この新しいライブラリについて、フォーラムおよびGitHub問題一覧からフィードバックを頂けると大変ありがたいです。また、SDKに対して貢献頂けると幸いです。
iOSアプリの新規作成または既存のiOSアプリとMobile Serviceの接続は、Windows Azure PortalでMobile ServiceのQuick Startビューにある『IOS』タブを選択して、その下の『Create a new iOS app』または『Connect to an existing iOS app』というリンクのどちらかに従っていくだけです。
どちらかのリンクをクリックすると、Mobile Serviceに接続するiOSアプリケーションの構築方法がステップごとに確認できます。
このチュートリアルでは、Windows Azureにデータを保存する簡単なiOSの『Todo List』アプリの構築(5分以内)をウォークスルーします。構築したアプリでデータ保存およびユーザー認証にiOSクライアントライブラリを使用する方法については、以下のチュートリアルを参照してください。
Facebook、Twitter、Googleとの認証サポート
初回 Mobile Servicesプレビューで、Microsoftのアカウント(以前のWindows Live IDアカウント)を使用したモバイルアプリのユーザー認証機能がサポートされました。今週は、Facebook、Twitter、Googleの証明を使用してユーザー認証する機能を追加しました。これらは、Windows 8アプリとiOSアプリの両方でサポートされています(1つのアプリで同時に複数のIDをサポートできるので、ユーザーはログイン方法が選択できます)。
以下のチュートリアルでは、IDプロバイダーにMobile Serviceを登録する方法をウォークスルーします。
上記のチュートリアルでは、IDプロバイダーからクライアントIDと秘密鍵を取得する方法をウォークスルーします。(Windows Azure Portal内で)Mobile Serviceの『IDENTITY』タブをクリックして、取得した値を保存すると、Mobile Serviceとのサーバーサイド認証が可能になります。
そして、クライアントもしくはモバイルアプリにコードを書いて、Mobile Serviceへのユーザー認証を行います。例えば以下は、Facebookの信用情報を利用してMobile Serviceにログインするためのコードになります。
var user = await App.MobileService .LoginAsync(MobileServiceAuthenticationProvider.Facebook);
UINavigationController *controller = [self.todoService.client loginViewControllerWithProvider:@"facebook" completion:^(MSUser *user、NSError *error) { //... }];
以下のチュートリアルは、Microsoftアカウント、Facebook、Twitter、Googleを使用したMobile Service認証についてです。