代码之家  ›  专栏  ›  技术社区  ›  Carl Patenaude Poulin

是否可以从Cortana后台应用程序打开网页?

  •  0
  • Carl Patenaude Poulin  · 技术社区  · 8 年前

    Cortana后台应用程序提供 deep linking capabilities ,允许开发者链接到她的应用程序中的特定页面。我想知道是否可以打开其他应用程序,例如web浏览器。

    我目前的工作是深入链接到我的应用程序,然后致电 Windows.System.Launcher.launchUriAsync 一旦我的应用程序启动。然而,这意味着应用程序将随web浏览器一起打开。我希望它完全不要打开!这可能吗?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Andrew Pilley    8 年前

    从的MSDN页面 LaunchUriAsync :

    除非您是从经典Windows应用程序调用此API,否则必须从ASTA线程(也称为UI线程)中调用此API。

    不幸的是,Cortana的后台任务不是UI线程。您作为后台任务运行,并通过一组为此目的提供的API与Cortana的UI通信,这些API受设计限制。

    任何你试图做的需要你在UI线程中的事情都会因为同样的原因而失败。不过,您可以尝试在应用程序中托管web控件,以从等式中删除连锁启动的浏览器。