关闭主 UWP 应用程序也会关闭所有其他托管应用程序视图

Closing Main UWP app also closes all other hosted app views

我刚刚在使用结果激活协议时在 UWP 应用程序中遇到了一个奇怪的行为。

  1. 首先,从另一个应用程序使用结果激活协议激活该应用程序。
  2. 通过其主磁贴打开由 Protocol for Results 激活的应用程序。您现在应该拥有主应用程序和托管应用程序视图 运行。
  3. 关闭主应用程序。
  4. 托管应用程序视图也已关闭,没有任何错误。

当您已经 运行 并使用结果激活协议启动另一个视图时,也会发生这种情况。关闭主应用程序也会关闭托管应用程序视图。

我是不是遗漏了一些配置?我也没有在文档中发现这种行为。

请注意,这是香草 UWP。不完全信任而不是 WinUI。谢谢

Closing Main UWP app also closes all other hosted app views

我不得不说这是设计,启动的视图将托管在主应用程序中,如果托管视图不关闭,您将无法与当前应用程序交互。您可以手动关闭视图或在主机视图中调用 ReportCompleted

如果您使用任务管理强制关闭主应用程序,视图将丢失主机然后关闭。目前,没有这样的配置可以禁用此功能,如果您确实需要这样的功能,我建议您在反馈中心提交关于此 API/feature 的 feedback/feature 请求。您可以在开始菜单中找到反馈中心。请在提交请求时将select开发者平台->API反馈作为分类。相关团队将检查请求。

更新

启动结果视图后打开 ProtocolApp 不是好的做法。即使结果视图托管在主视图中,但它仍然是 sub-process of ProtocolApp 在后台运行,您可以检查任务管理器来验证这一点。当我们通过其主图块打开 ProtocolApp 时,ProtocolApp 的主要进程将从后台恢复。如果我们关闭主进程,sub-process 也会被杀死。这是设计使然。