Microsoft Azureモバイルサービスは、アプリケーションにクラウドバックエンドを実装するためのターンキーソリューションを開発者に提供します。 現在、Azure Mobile ServicesはASP.NET Web APIを使用したサーバーロジックの作成を完全にサポートしており、ASP.NETを使用してモバイルAPIを設計する開発者にとって優れた選択肢です。
- すべてのモバイルプラットフォーム向けの SDK を 備えた バックエンドに 対応 。 Azureモバイルサービスを使用すると、iOS、Android、Windows、Windows Phone、HTMLアプリケーション、およびXamarin、Sencha、PhoneGapに基づくクロスプラットフォームソリューション用のフル機能のバックエンドをすばやく追加できます。 これらの各プラットフォームにクライアントSDKを提供しているため、アプリケーションをクラウドのバックエンドに簡単に統合できます。
- モバイル APIの ファーストクラスホスティング 。
モバイルサービスはWeb APIを使用して構築され、既存のWeb APIコントローラーをモバイルサービスに公開できます。 モバイルサービスと他のコンピューティング環境の主な違いは、 Web API コントローラー の 作業 を 個別に監視することです 。 また、Web APIランタイムまたは拡張機能に問題がある場合は、ユーザーの参加なしに修正します。 コントローラーコードに問題が見つかった場合にのみご連絡します。
- モバイル バックエンドの 便利な 機能 。 Web APIコードには、モバイルサービスによって提供される多数の機能があります。 その中でも、モバイルプッシュ 通知 、 SignalRを使用した リアルタイム メッセージング 、 ソーシャルネットワークを介した認証 、 オフライン アプリケーションモードの 実装 です 。
- 企業システムへの 接続 。 エンタープライズシステム開発者は、Active Directoryを使用してアプリケーションを承認し、SharePointやOffice 365などの企業リソースにアクセスできることを評価します。さらに、インターネットからアクセスできないローカルリソースにシームレスに接続できるメカニズムを追加しました。データベースや内部Webサービスなど。
- Visual Studio との統合 。 お気に入りの環境には、モバイルサービス用の特別なプロジェクトテンプレートとスキャフォールドが含まれ、公開とリモートコードデバッグのサポートが提供されます。
すべてのモバイルプラットフォームに対応したSDKを備えたバックエンド
Visual Studioでモバイルサービスのサポートの実装を開始するのは非常に簡単です。 Microsoft Azureポータルに移動して、新しいモバイルサービスを作成する必要があります。 最初のページで、サーバー側として.NETを選択します。 サービスが作成されたら、「クイックスタート」タブに移動し、開発しているクライアントプラットフォームのテストプロジェクトをダウンロードします。
Visual Studioで作業を開始する場合は、ローカルプロジェクトを開発した後、サービスに公開するためのモバイルサービスを作成できます。
どちらの場合でも、Mobile Services .NETプロジェクトテンプレートを受け取ります。 これは、追加のNuGetパッケージを使用する通常のWeb APIプロジェクトであることに注意してください。
TodoItemController.csコントローラーファイルを開き、その内容を調べます。 GetAllTodoitemsメソッド内にブレークポイントを設定します。 このコントローラーは、Mobile Services .NETサポートを使用してデータを操作する方法を示します。
public class TodoItemController : TableController<TodoItem> { protected override void Initialize(HttpControllerContext controllerContext) { base.Initialize(controllerContext); csharp_testContext context = new csharp_testContext(); DomainManager = new EntityDomainManager<TodoItem>(context, Request, Services); } // GET tables/TodoItem public IQueryable<TodoItem> GetAllTodoItems() { return Query(); } // GET tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959 public SingleResult<TodoItem> GetTodoItem(string id) { return Lookup(id); } // PATCH tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959 public Task<TodoItem> PatchTodoItem(string id, Delta<TodoItem> patch) { return UpdateAsync(id, patch); } // POST tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959 public async Task<IHttpActionResult> PostTodoItem(TodoItem item) { TodoItem current = await InsertAsync(item); return CreatedAtRoute("Tables", new { id = current.Id }, current); } // DELETE tables/TodoItem/48D68C86-6EA6-4C25-AA33-223FC9A27959 public Task DeleteTodoItem(string id) { return DeleteAsync(id); } }
TodoItemの主要なCRUDメソッドはすべて定義済みであることに注意してください。 既定では、EntityDomainManagerコントローラーはEntity Frameworkモデルのラッパーであり、代替データウェアハウスの使用に簡単に移行できます。
- MongoDBの場合、 WindowsAzure.MobileServices.Backend.Mongoの NuGet拡張機能からMongoDomainManagerを使用します 。
詳細情報は、次のリンクから入手できます。 - Azure Table Storageの場合 、NuGet WindowsAzure.MobileServices.Backend.Storage拡張機能のStorageDomainManagerを使用します。
実装例はこちらから入手できます 。
モバイルサービスでの.NETコードのサポートにより、モバイルバックエンドのロジックの起動とデバッグをローカルで利用できます。 F5キーでサービスを開始し、ブラウザーのサービスの開始ページで[試してみる]をクリックします。
モバイルサービスの.NETサポートは、Web APIのヘルプ情報を個別のページとして自動生成します。 メソッド実装の説明は、 GET tables / TodoItemを使用して取得できます。 [Try this out]をクリックしてから[Send]をクリックしてGetAllTodoItems()メソッドを呼び出すと、前に設定したブレークポイントに到達します。
APIのサーバー側の開発後、Web APIをモバイルサービスに公開できます。 発行のサポートはVisual Studioに組み込まれており、プロジェクトを右クリックして[発行]を選択するだけです。 Azureポータルにアクセスしなくても、Visual Studioから既存のモバイルサービスを選択するか、新しいモバイルサービスを直接作成できます。
既存のWebAPIソリューションをモバイルサービスに公開し、その管理と監視をすぐにAzureに転送できます。
モバイルサービスでの.NETバックエンドサポートの詳細については、ドキュメントをご覧ください。
一流のモバイルAPIホスティング
開発者が自分のAPIをモバイルサービスに公開するときに得られる利点について少し話しましょう。一方、AzureでWeb APIをホストする方法は他にもたくさんあります。
モバイルサービスが提供する利点のほんの一部を示します。
- 監視と診断。 モバイルサービスは、APIを管理するためにAzureで作成された制御および監視機能に基づいて99.9%のSLAを提供します。 有料サービスには、HTTPトラフィックとSQL接続の監視が含まれます。さらに、エラー数が急増したことをお知らせします。 そして、これらはエンドポイントの監視やアラートなど、自分で使用できる多くの機能への単なる追加です。
- 環境の 自動 更新 。 プラットフォームコードは、アプリケーションを再デプロイすることなく毎週更新されます。 モバイルサービスまたは新機能のランタイム環境の変更-これらの更新はすべて、作業を中断することなくモバイルサービスに追加されます。
- クラウド リソースの 自動初期化 。 モバイルサービスを作成する場合、SQLデータベースと通知ハブを自動的に提供および構成し、関連するすべての接続の設定を確認します。 また、マウスを数回クリックするだけで、スケジュールされたタスクとハイブリッド接続をクラウドですばやく作成できます。 モバイルサービスは、サービスを快適に運用するために必要なすべてのクラウドリソースとの迅速な接続を提供します。
便利なモバイルバックエンド機能
モバイルサービスは、アプリケーションにすぐに使用できる大量の機能を提供します。
例:
- 認証準備完了。 各モバイルサービスについて、クラウドリソースのセット全体と最も一般的な認証シナリオの実装が提供されます。 承認をMicrosoft、Facebook、Twitter、またはGoogleアカウント、またはAADを使用して組織のアカウントにすばやく接続します。 OAuthの専門家である必要はありません。必要なメカニズムはすべて用意されており、いくつかの構成パラメーターを明確にすれば十分です。Azureサービスが残りを処理します。
詳細情報は、次のリンクから入手できます。 - スケーラブルなプッシュ通知。 モバイルサービスには常にプッシュ通知ハブが装備されており、Windows、iOS、Android、Kindleなどのすべての主要プラットフォームのデバイスに多数の通知を配信できます。 接続された何百万ものデバイスに通知を送信するために、必要なAPIコールは1つだけです。 また、オーディエンスを分割し、各グループの通知テンプレートを設定するためのタグ付けサポートを実装しました。
詳細な手順は、 ドキュメントに記載されています 。 - オフラインアプリケーションモード 。 これまで、アプリケーションからユーザーが期待する機能の1つは、インターネット接続がない場合にデータを操作するためのサポートになりました。 Azure Mobile Servicesは、SQLiteに基づくすべての主要なプラットフォームのオフラインアプリケーション操作とデータ同期の組み込みサポートを提供します。
この機能の詳細については、 こちらをご覧ください 。 - リアルタイムメッセージング 。 プッシュ通知はユーザーをアプリケーションに引き付けるのに非常に効果的ですが、アプリケーションにスケーラブル、高スループット、低レイテンシの帯域幅を提供するには、異なるツールセットが必要です。モバイルサービスは、WebSocketとSignalRに基づくリアルタイムデータ交換の組み込みサポートを提供し、双方向メッセージングを提供しますアプリケーション。 このサービスには、アプリケーションの成長に合わせてシームレスでスケーラブルな展開を行うためのメッセージバスが組み込まれています。 他のサービスと同じ認証チャネルと統合され、認証とユーザー承認を促進します。
追加情報はこちらから入手できます 。
企業システムに接続する
.NETプラットフォームの選択は、一般的な企業開発シナリオの1つです。これは、.NET言語ファミリがビジネスアプリケーションを作成するための多数の関連スクリプトを提供するためです 。
- Active Directory アカウントでの登録と承認 。 エンタープライズアプリケーションの場合、ADアカウントでログインできることが非常に重要です。 このメカニズムの実装により、アカウント管理が簡素化され、SharePoint OnlineやOffice 365などのActive Directoryで保護されたクラウドリソースへのアクセスもユーザーに提供されます。
アプリケーションでのActive Directory認証の設定の詳細については、次の資料をご覧になることをお勧めします。 統合アクセスを設定するためのビデオの手順はこちらです。 - 企業ネットワーク内のデータに 接続 します 。 データベースやWebサービスなどの企業リソースが会社の機器にローカルに保存され、クラウドに転送できない場合、Microsoft Azureはモバイルサービスを介してそれらにアクセスする機能を提供します。 ローカルトラフィックをクラウドに転送できる「ハイブリッド接続」機能を使用して、アプリケーションの企業ネットワーク内のデータへのアクセスを提供できます。
詳細なガイドとビデオの説明へのリンク。 - Xamarin SDK Xamarinは、C#でクロスプラットフォームアプリケーション(Windows、Windows Phone、Android、IOS)を作成するための既製のツールセットを提供し、他のプラットフォームのMicrosoftスタックに精通している開発者向けの再利用スキルに基づく最も生産的なアプリケーション作成メカニズムの1つを実装します。 Microsoft Azureモバイルサービスは、このSDKと、Xamarinでアプリケーションを作成するために必要な他の膨大なリソースを提供します。
- 加速器 シナリオを実装する最も簡単な方法は、既製のソリューションを使用することです。 Microsoft Azureチームは、一連の「アクセラレータ」を作成しました。これらのアクセラレータは、一部のお客様の主要な垂直シナリオをカバーし、モバイルサービスの使用を実証する、すぐに使用できるアプリケーションです。 これらのアプリケーションは、Windowsストアで公開されており、ダウンロードおよび変更用のソースコードとして入手できます。
詳細情報は、次のリンクから入手できます。
Visual Studioの統合
既にリストされている機能に加えて、 Visual Studioには、モバイルサービスの開発とデバッグに役立つ他の多くのツールが含まれています。 たとえば、テーブルコントローラー(リレーショナルデータの格納用)、ユーザーコントローラー(任意のAPI、HTTPの構築用)、およびスケジュールされたタスクを作成できる組み込みの足場。
Visual Studioは、リモートデバッグ機能も提供します。 [ソリューションエクスプローラー]でモバイルサービスを右クリックし、[デバッガーの接続]を選択します。 この機能を使用するには、必ずデバッグモードでコードを公開してください。
ソリューションエクスプローラーのもう1つの興味深い機能は、「ログの表示」コマンドです。このコマンドを使用すると、エラーメッセージやスタックトレースなど、クラウドのモバイルサービスによって生成されたログを表示できます。
Azureモバイルサービスのさまざまな新機能をご理解いただけることを願っています。次のプロジェクトで試してみることをお勧めします。
推奨事項またはフィードバックについては、Twitter: @theYavorを使用してください 。
便利なリンク
- Azureを30日間無料でお試しください !
- Microsoft Azure Development Center(azurehub.ru) -スクリプト、ガイド、例、開発の推奨事項
- Twitter.com/windowsazure_ru-最新のMicrosoft Azureニュース
- FacebookのMicrosoft Azureコミュニティ -専門家、質問
- Microsoft Cloudおよびその他の仮想アカデミーコースを学ぶ
- ビジネスとクラウド:ベストプラクティスソリューション
- 大規模組織向けのWindows 8.1アップデート。 はじめに
- Microsoft Hybrid Cloud:サンプルガイド
- Windows 8.1のユーザーを準備するためのツールキット
- Win2Dグラフィックスライブラリの概要
- 無料または試用版のVisual Studioをダウンロードする
- ユニバーサルWindows 開発者になる