4

我目前正在寻找一种使用可用 Win32 API 以编程方式在应用容器内启动现代 (uwp) 应用程序的方法。

我不想通过协议“://app”启动应用程序。

相反,我想自己创建应用程序容器,然后在其中加载 UWP 应用程序以访问所有内存等。

这可能吗,如果可以,怎么办?

4

1 回答 1

-3

不确定这是否有帮助,但这是您要找的吗?此答案和博客文章使用 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 中使用查询参数将数据传递给新应用程序。还有一种方法可以使用应用服务从其他应用中检索数据。

于 2015-09-23T16:08:52.343 回答