Project Rome は、Microsoft が提供するアプリのクロスデバイス エクスペリエンス プラットフォームです。
このサイトには、Project Rome の開発者向けドキュメント、およびその他の有用なリソースへのリンクが含まれています。
Project Rome に関するニュース、ブログ記事、ビデオについては、Project Rome のランディング ページをご覧ください。
Project Rome を使用するサンプル アプリケーションについては、下記の SDK の表を確認するか、Project Rome のサンプル リポジトリにアクセスしてください。
Project Rome について
Project Rome を使用する開発者は、複数のデバイスで実行可能で、かつデバイスを切り替える際にユーザーと一緒に切り替え先のデバイスに移動できるアプリを作成できます。
Project Rome には、Microsoft Graph およびプラットフォーム固有のネイティブ SDK を介して公開される機能が含まれています。 これらの機能により、複数のクロスデバイス機能とコネクテッド デバイス機能が有効になり、ログインしたユーザー ID を軸としてアプリを一元管理できます。 Project Rome に関連付けられた機能には、ユーザーのアクティビティ、通知、デバイス リレー、近距離共有などがありますが、これらに限定されるものではありません。
ネイティブ API と Graph API の使い分け
シナリオによっては、ネイティブ プラットフォームの SDK と Microsoft Graph を介した REST API の両方から利用可能です。 一般に、REST API を使用すると Project Rome の機能を素早く簡単に実装できます。 ただし、プラットフォーム固有の実装を使用することで、次のような利点が得られます。
- プラットフォーム SDK は、サーバー側の情報が変更されたときにアプリを更新するために、ネイティブ言語のオブジェクト モデル、ローカル記憶域、および発行-サブスクライブ パターンを提供します。
- アプリが Windows (UWP または Win32 アプリ) で実行されている場合、ユーザーの既定のアカウントを使用する機能や、ユーザーのエンゲージメントを自動的に追跡する機能など、プラットフォーム SDK の多数の追加機能を使用できます。
- プラットフォーム SDK を介してしか使用できない他の Project Rome 機能を使用する予定の場合は、それぞれの機能を同じ方法で実装することをお勧めします。
シナリオによっては、Microsoft Graph API とクライアント SDK を組み合わせて使用することで有効になるものもあります。 通知がその例になります。 この場合、MS Graph API を使用してアプリ サーバー側からの通知を公開し、ネイティブ プラットフォームのクライアント SDK を使用して各クライアント側のネイティブ アプリで通知を受信および管理します。
SDK
Project Rome は現在、以下のプラットフォームに対して実装されています。 サンプルと SDK のダウンロードについては、各リンク先をご覧ください。
| プラットフォーム | 機能 | SDK パッケージ | サンプル |
|---|---|---|---|
| Windows SDK | デバイス リレー、アクティビティ/タイムライン | Windows デバイス リレー用 Project Rome サンプル Windows アクティビティ用 Project Rome サンプル |
|
| Windows (プレビュー) | Microsoft Graph 通知 | Windows 用 Graph 通知サンプル | |
| Android | デバイス リレー、アクティビティ/タイムライン、Microsoft Graph 通知 (プレビュー) | Android 用 Project Rome サンプル | |
| iOS | デバイス リレー、アクティビティ/タイムライン、Microsoft Graph 通知 (プレビュー) | iOS 用 Project Rome サンプル | |
| Android 用 Xamarin (プレビュー) | デバイス リレー | Android 用 Xamarin サンプル | |
| MSGraph | デバイス リレー、アクティビティ/タイムライン、Microsoft Graph 通知 | デバイス リレー アクティビティ/タイムライン Graph 通知 |