私は現在、利用可能な Win32 API を使用して、アプリ コンテナー内で最新の (uwp) アプリケーションをプログラムで起動する方法を探しています。
プロトコル「://app」でアプリを起動したくありません。
代わりに、自分でアプリ コンテナーを作成し、その中に UWP アプリを読み込んで、すべてのメモリなどにアクセスできるようにしたいと考えています。
これは可能ですか?
私は現在、利用可能な Win32 API を使用して、アプリ コンテナー内で最新の (uwp) アプリケーションをプログラムで起動する方法を探しています。
プロトコル「://app」でアプリを起動したくありません。
代わりに、自分でアプリ コンテナーを作成し、その中に UWP アプリを読み込んで、すべてのメモリなどにアクセスできるようにしたいと考えています。
これは可能ですか?
これが役立つかどうかはわかりませんが、これはあなたが探しているものですか?この回答とブログ投稿は C# です。 http://blogs.windows.com/buildingapps/2015/09/22/using-cross-app-communication-to-make-apps-work-together-10-by-10/
あるアプリから別のアプリにディープリンクするには、移動先のアプリの Package.appxmanifest にプロトコル宣言を追加する必要があります。
コンテナー アプリから、次を使用してプロトコルを実装するアプリを起動できます。
Uri uri = new Uri("your-protocol-name");
await Launcher.LaunchUriAsync(uri);
特定のアプリを起動する場合は、アプリの登録時に取得した一意のアプリ名を追加する必要があります。
var options = new LauncherOptions();
options.TargetApplicationPackageFamilyName = "12345.your.app";
Uri uri = new Uri("com.contoso.showproduct:?ProductId=3748937");
await Launcher.LaunchUriAsync(uri, options);
起動 Uri のクエリ パラメーターを使用して、新しいアプリにデータを渡すことができます。App Services を使用して他のアプリからデータを取得する方法もあります。