モバイル サービスの更新: HTML5/JS SDK と Windows Phone 7.5 サポートの追加
このポストは、3 月 22 日に投稿された Mobile Services Updates: New HTML5/JS SDK and Windows Phone 7.5 support の翻訳です。
Windows Azure モバイル サービス (英語) は、スケーラブルで魅力的なモバイル アプリをすばやく簡単に構築できるようにすることを目的に作られました。今週、Scott Guthrie から、このモバイル サービスに対する重要な更新が 2 つ発表されました (英語) (翻訳 SATO NAOKI Blog : Windows Azure: 新しいHadoopサービス、HTML5/JS (CORS)、PhoneGap、Mercurial、Dropbox のサポート を参照ください。)
まず 1 つ目は、純粋な HTML5/JS クライアント (および PhoneGap アプリ) のサポートです。現在の SDK 群 (2 週間前にリリースされた Android SDK (英語)、Windows ストア (英語)、Windows Phone 8、および iOS (英語) の SDK) に、HTML5/JS クライアント ライブラリが追加されました。
2 つ目は、ポータブル クライアント ライブラリのプレビュー版 (英語) です。これにより、Windows Phone 7.5 アプリで Windows Azure モバイル サービスをバックエンドとして使用することが可能になります。
当初は HTML5 および Windows Phone 7.5 アプリをサポートする予定を発表していませんでしたが、ユーザーの皆さまのフィードバック (英語) から、開発者にはこれらのプラットフォームに対するサポートが必要であることがすぐにわかりました。そして今週、このようにご提供できたことを嬉しく思っています。
HTML5/JS クライアント
HTML5 のサポートは、主なプラットフォームのいずれでも利用できるモバイル アプリを短期間で開発しようとする多くの開発者から求められていました。HTML5 アプリは、ネイティブ アプリが持つプラットフォーム固有の利点を同じように活用できるわけではありませんが、複数のコード ベースを維持することなく、多種多様なプラットフォームやデバイスを利用しているユーザーに迅速にアプリを提供する手段としては非常に優れています。HTML5 に対するサポートの追加は、包括的なモバイル サービスの簡素化を目指す取り組みの一環とも言えます。
今週の更新により、モバイル サービス バックエンドを、純粋な HTML5 Web クライアントと、Apache Cordova (英語)/PhoneGap (英語) の両方に使用することが可能になります。この 2 つのカテゴリのどちらかに属するアプリでは、データ ストレージ (英語) と認証 (英語) の両方の目的にモバイル サービスを使用できます。
以下の 2 つの重要な更新により、モバイル サービスをバックエンドとして使用する HTML5 アプリは、データをクラウドに保管し、ユーザーを認証できるようになります。
- 新しい Web クライアントライブラリ : IE8 以降、Chrome、Firefox、Safari の現行バージョン、および PhoneGap 2.3.0 以降をサポートします。このライブラリは、ネイティブ SDK と同じデータ クエリおよびストレージ API を提供します。これを使うことにより開発者は Facebook、Twitter、Microsoft または Google Account の資格情報でユーザーを認証できます。
- クロス オリジン リソース共有 (CORS) のサポート: この更新によって、モバイル サービスはクロスドメイン Ajax 要求を受け入れられるようになります。また、Windows Azure 管理ポータルを使って、許可されるドメインのホワイトリストを構成することが可能です。
HTML5 アプリの構築を始める
Windows Azure でホストされるスケーラブルなバックエンドを実装する HTML5 アプリの構築を始めるには、Windows Azure 管理ポータルに移動し、 [New] をクリックしてモバイル サービスを作成します。クイックスタート タブに、プラットフォームの選択肢の 1 つとして HTML が表示されます。
既存のアプリをモバイル サービスに接続したり、本番稼働させるアプリを構築し始めたりする前に、クイックスタート チュートリアル (英語) を参照してモバイル サービスの詳しい内容を知っておくことをお勧めします。
5 分もかからず、データをクラウドに保管する簡単な ToDo リスト アプリを作成することができます。
データの操作 (英語) およびユーザー認証 (英語) については、リンク先のチュートリアルを参考にすることをお勧めします。
HTML5 アプリのデータはサーバー スクリプトで検証および変更できます。方法は、ネイティブ アプリを構築するときとほぼ同じです。チュートリアル全体は、こちら (英語) から参照してください。
本番稼働のための準備
HTML5 アプリを本番稼働に移行するための準備として、注意すべき点が 1 つあります。アプリをホストするために使用する Web サイトのホスト名を、クロス オリジン リソース共有 (CORS) のホワイトリストに追加することが重要です。
これを行うには、 [Configure] タブに移動し、アプリがホストされるサイトのホスト名を入力します。
適切なホスト名を入力したら、 [Save] を忘れずにクリックします。(要求元として許可するホスト名はいつでも削除できます。名前の右側の [X] をクリックして、 [Save] をクリックします。)
何か問題が発生した場合には、GitHub issue tracker (英語) からお知らせください。また、フォーラム (英語) も参照してください。
ポータブルクライアントライブラリ : NuGet での新しい C# クライアントライブラリと、 Windows Phone 7.5 サポート
先週、NuGet でモバイル サービス C# クライアント ライブラリの次期バージョンのプレビュー版 (英語) が公開されました。C# クライアント SDK の次回の更新には、次のようなすばらしい新機能が含まれます。
- ポータブルライブラリのサポート : ポータブル ライブラリを使用することにより、Windows ストアと Windows Phone 8 のライブラリが 1 つのコードベースに集約されています。開発者は、ポータブル ライブラリに移行することにより、新しい多様なクライアント プラットフォームでモバイル サービスを使用できるようになり、さらに ASP.NET または .NET サーバー バックエンドからモバイル サービスを呼び出すこともできるようになります。
- Windows Phone 7.5 のサポート: ポータブル ライブラリに移行することにより、Windows Phone 7.5 に対するサポートが追加されます。まったく同じ機能ではないかもしれませんが、これは、Mobile Services UserVoice ページ (英語) で最も必要な機能の第 3 位でした。
- Json.NET と HttpClient: 最新で最も柔軟な HTTP コンポーネントを使用するように、実装が更新されました。これには、クライアントによって文字列に自動的にシリアル化される列挙型、null 許容型、リストでの CONTAINS クエリ、新しい MobileServicesCollection、HttpMessageHandlers、単体テストの強化などのサポートが含まれます。
NuGet パッケージをインストールする
開始前に、NuGet 2.1 (英語) 以降がインストールされていることを確認してください。
パッケージをインストールするには、パッケージ マネージャー コンソールで以下のコマンドを実行します。
このパッケージを Visual Studio に表示するには、ドロップダウン メニューから「Include Prelease」を選択します。
NuGet で利用可能なリリース前パッケージの詳細については、Johan Laanstra のブログ (英語) を参照してください。
注意 : このプレビュー版は、まだ正式なリリースとなっていないバージョンであり、今後の C# SDK の更新に含まれる予定の新機能を事前に試してみるためのものです。 本番稼働用のアプリには、「安定版」である .NET 向けモバイル サービス クライアント ライブラリを引き続き使用することをお勧めします ( こちらからダウンロードできます)。
ポータブル ライブラリへの移行は大幅な機能強化をもたらしますが、Windows Phone 8 と Windows ストアの SDK の違いを解消するために、他に影響を及ぼす変更がいくつか行われています。このような変更の詳細については、Carlos Figueira のブログ (英語) を参照してください。
まとめ
皆さまからのフィードバック (英語) のおかげで今回の更新をリリースできたことを、大変嬉しく思っています。次回へのご要望がありましたら、今後も Uservoice ページ (英語) からぜひお知らせください。また、皆さまが作成したアプリを電子メールでご紹介ください。何か問題がありましたら、いつでもフォーラム (英語) からご質問ください。
世界中の開発者の方がこれまでに作成した、Windows ストア、Windows Phone 8、iOS、Android のアプリには本当に感動しています。HTML5 および Windows Phone 7.5 のアプリが作成されることを楽しみにしています。