Windows Azureは、Microsoftの最もオープンなプラットフォームの1つです。 プラットフォームが提供するサービスの管理とアクセスは、REST APIを備えたオープンプロトコルを使用して実行され、 node.js 、 Java 、 PHP 、および.NETでアプリケーションを開発できます 。
インターネットおよび関連サービスにアクセスするためのモバイルコンピューターの使用は、日々増加しています。 多くの一般的なインターネットサービスには、主要なモバイルプラットフォーム用の高度なクライアントがあります。 開発者がお互いをすばやく知り、ソリューションでWindows Azureの機能を使用できるようにするために、 Windows Azure Tookits for Devicesという一般名で、主要なモバイルプラットフォームとテクノロジー向けにいくつかのオープンソースプロジェクトが開発されました。
Habr: Windows Phone 向けWindows Azure ToolkitおよびiOS向け Windows Azure Toolkit、ソーシャルゲーム向けWindows Azure Toolkit、およびデバイス向けWindows Azure Tookitsの記事で、そのすべての始まりを見つけることができます。
このプロジェクトはAndroidでも利用でき、最近Windows 8 Consumer Previewの開発をサポートする更新プログラムを受け取りました。
この記事の目的は、Windows 8用のWindows Azure Toolkitを紹介することです。
Windows 8用Windows Azure Toolkitの概要
開発には、Windows 8用のMetroスタイルアプリケーションを開発するためのVisual Studio 11 Betaと、Windows Azureパーツを開発するための無料のWeb ExpressなどのVisual Studio 2011の両方が必要です。 また、Windows Azureエミュレーターを実行するには、SQL Server Expressをインストールする必要があります。
Windows 8でWindows Azure SDKをインストールするための詳細な手順については、 こちらをご覧ください。
Windows 8用Windows Azure Toolkitのインストールスクリプトは、すべての依存関係を確認し、作業に必要なすべてをインストールします。 依存関係の完全なリストは、 ドキュメントに記載されています 。
次に、ツールキットの構成に直接進みます。
2つのパターン:
- Windows 8クラウドアプリケーション -Windows Azure(Visual Studio 2010)および
- 通知+アクセス制御アプリケーション-Metroスタイルアプリケーション(Visual Studio 11)用。
Windows 8クラウドアプリケーション :Widows Azureに展開するプロジェクトと、クライアントの登録とプッシュ通知の送信を担当するASP.NET MVC 3プロジェクトを作成します。
通知+アクセス制御アプリケーション :メトロスタイルアプリケーションからWindows Azureサービスの使用を開始するために必要なすべてを含む基本プロジェクトを作成します。 C#およびJavaScriptで利用可能です。
コード例( Samplesフォルダー内):
- ACSは、MetroスタイルアプリケーションでAccess Contol Servicesを使用する例です。
- MargiesTravelは、メトロスタイルのJavaScriptアプリケーションの例であり、NuGetパッケージを使用してアラートを送信する機能を追加します。
- Notifications.CSharpは、WinMD NuGetパッケージを使用してアラート用のアプリケーションを登録/登録解除するXAMLおよびC#のメトロスタイルアプリケーションの例です。
- Notifications.JSはNotifications.CSharpに似たサンプルアプリケーションですが、JavascriptとHTMLで記述されています。
- PNWorkerは、Windows Azureワーカーロールを使用したWindowsプッシュ通知を示すサンプルアプリケーションです。
NuGetパッケージ:
- ACSAuthenticationは、WindowsランタイムのWebAuthenticationBrokerクラスを使用してWindows Azureアクセスコントロールサービスからトークンを取得することを簡素化するWinMDライブラリです。 NuGetパッケージは、次のリンクから入手できます。nuget.org / packages / Windows8.Identity.AccessControl
- ACSAuthentication.CSharpは、ACSで構成された認証プロバイダーの一覧を表示するC#で記述されたXAMLコントロールです。 NuGetパッケージWindows8.Identity.AccessControl( nuget.org/packages/Windows8.Identity.AccessControl )を使用します。 NuGetパッケージは、次のリンクから入手できます。nuget.org / packages / Windows8.CSharp.Identity.AccessControl
- ACSAuthentication.JS - ACSAuthentication.CSharpに似たHTMLコントロール。 NuGetパッケージは、次のリンクから入手できます。nuget.org / packages / Windows8.JS.Identity.AccessControl
- ClientRecipeは、NuGetパッケージWnsRecipeによって作成されたエンドポイントプッシュ通知を操作するためのWinMDライブラリです。 NuGetパッケージは、次のリンクから入手できます。nuget.org / packages / Windows8.Notifications
- WnsRecipeは、プッシュプッシュサーバー実装のサポートライブラリであり、3種類のプッシュ通知の送信を簡素化しますWindowsプッシュ通知サービス(WNS):タイル、トースト、およびバッジをサポートします。 NuGetパッケージは、次のリンクから入手できます。nuget.org / packages / WnsRecipe
実行中のMargieの旅行の例
Margie's Travelは、HTML5、CSS、およびJavaScriptで記述され、Windows Azureの機能を使用するToolkitのメトロスタイルアプリの例です。 アプリケーションはインストールを必要としません。 作業するには、プロジェクトのクライアントとサーバーの部分を実行するだけです。
- 管理者としてVisual Studio 2010を起動します。
- Samples \ MargiesTravelフォルダーにあるMargiesTravel.slnソリューションを開きます 。
- MargiesTravel.Cloudをスタータープロジェクトとしてインストールします。
- F5キーを押してエミュレーターでアプリケーションを起動し、ページでブラウザーウィンドウを開きます。
- [ ログイン]をクリックして、認証プロバイダーのリストを表示します 。
- 認証プロバイダーを選択してサインインする
- Visual Studio 11を起動し、 Samples \ MargiesTravelフォルダーにあるMargiesTravel.Client.slnソリューションを開きます 。
- F5キーを押して、メトロスタイルアプリを起動します。
- クライアントアプリケーションで[ ログイン]をクリックして、認証プロバイダーのリストを表示します。
- 認証プロバイダーを選択してサインインします。
- 詳細情報を表示するには、いずれかの旅行をクリックします。
- クラウドアプリケーションには、登録済みの顧客へのメッセージの送信をテストできる特別な機能が含まれています。 メッセージを送信するには、ブラウザのアドレスバーに127.0.0.1/upgradeと入力してEnterキーを押します 。
- ブラウザには、登録されているすべての顧客のリストが表示されます。 リストにMargies.Travel.Client.Appが含まれていることを確認します。 Margies.Travel.Client.App行の「Upgrade for(...)」リンクをクリックして、更新してクライアントにアラートを送信します。
- 少しの間、アプリケーションは更新に関する情報を含むトーストメッセージを受信する必要があります。
便利なリンク
Visual Studio 11 Betaをダウンロードする
Windows Azureの開発に必要なものすべて
MSDNのWindows Azure開発センター
MSDNのWindows Azureフォーラム
デバイス用のWindows Azure Toolkits:
Codeplex上のWindows 8用のWindows Azure Toolkit
GitHub上のAndroid向けWindows Azure Toolkit
GitHub上のiOS用Windows Azure Toolkit
Codeplex上のWindows Phone用のWindows Azure Toolkit
GitHubのソーシャルゲーム向けWindows Azure Toolkit