Windows10-development-app-to-app-communication
提供:Dev Guides
Windows10 Dev-アプリ通信
アプリ間通信とは、同じデバイスにインストールされている別のアプリケーションとアプリケーションが通信できることを意味します。 これは、ユニバーサルWindowsプラットフォーム(UWP)アプリケーションの新機能ではなく、Windows 8.1でも利用可能でした。
Windows 10では、同じデバイス上のアプリケーション間で簡単に通信できるように、いくつかの新しい改良された方法が導入されています。 2つのアプリ間の通信は、次の方法で行うことができます-
- あるアプリケーションがいくつかのデータで別のアプリを起動します。
- アプリは、何も起動せずにデータを交換するだけです。
アプリからアプリへの通信の主な利点は、アプリケーションを小さなチャンクに分割できることです。これを簡単に維持、更新、使用できます。
アプリを準備する
以下の手順に従うと、他のアプリケーションがアプリケーションを起動できます。
- アプリケーションパッケージマニフェストにプロトコル宣言を追加します。
- Package.appxmanifest ファイルをダブルクリックします。このファイルは、次に示すようにソリューションエクスプローラーで使用できます。
- *宣言*タブに移動し、以下に示すようにプロトコルの名前を書きます。
- 次のステップは、*アクティベーション*コードを追加することです。これにより、アプリは他のアプリケーションによって起動されたときに適切に応答できます。
- プロトコルのアクティベーションに応答するには、アクティベーションクラスの OnActivated メソッドをオーバーライドする必要があります。 そのため、 App.xaml.cs ファイルに次のコードを追加します。
- アプリケーションを起動するには、 Launcher.LaunchUriAsync メソッドを使用するだけで済み、このメソッドで指定されたプロトコルでアプリケーションを起動します。
この例では、 ProtocolHandlerDemo アプリケーションにはボタンが1つ含まれており、ボタンをクリックすると、 FirstProtocolHandler アプリケーションが開きます。
1つのボタンを含むProtocolHandlerDemoアプリケーションのXAMLコードを以下に示します。
以下に示すのは、ボタンクリックイベントが実装されるC#コードです。
ここで、 FirstProtocolHandler アプリケーションテーブルを見てみましょう。 以下に、いくつかのプロパティを使用してテキストブロックが作成されるXAMLコードを示します。
エミュレータで ProtocolHandlerDemo アプリケーションをコンパイルして実行すると、次のウィンドウが表示されます。
これで、ボタンをクリックすると、以下に示すように FirstProtocolHandler アプリケーションが開きます。