是否可以从 Cortana 后台应用程序打开网页?
Is it possible to open a web page from a Cortana background app?
Cortana 后台应用程序提供 deep linking capabilities,允许开发人员 link 到其应用程序中的特定页面。我想知道是否可以打开其他应用程序,例如网络浏览器。
我目前的解决方法是深入link我的应用程序,然后在我的应用程序启动后立即调用Windows.System.Launcher.launchUriAsync
。但是,这意味着该应用程序会随网络浏览器一起打开。我希望它根本不打开!这可能吗?
来自 LaunchUriAsync 的 MSDN 页面:
Unless you are calling this API from a Classic Windows application, this API must be called from within an ASTA thread (also known as a UI thread).
不幸的是,Cortana 的后台任务不是 UI 线程。您 运行 作为后台任务,并通过为此目的提供的一组 API 与 Cortana 的 UI 通信,这些 API 受设计限制。
您尝试执行的任何需要您进入 UI 线程的操作都将因同样的原因而失败。您可以尝试在您的应用程序中托管 Web 控件,但要从等式中删除链式启动的浏览器。
Cortana 后台应用程序提供 deep linking capabilities,允许开发人员 link 到其应用程序中的特定页面。我想知道是否可以打开其他应用程序,例如网络浏览器。
我目前的解决方法是深入link我的应用程序,然后在我的应用程序启动后立即调用Windows.System.Launcher.launchUriAsync
。但是,这意味着该应用程序会随网络浏览器一起打开。我希望它根本不打开!这可能吗?
来自 LaunchUriAsync 的 MSDN 页面:
Unless you are calling this API from a Classic Windows application, this API must be called from within an ASTA thread (also known as a UI thread).
不幸的是,Cortana 的后台任务不是 UI 线程。您 运行 作为后台任务,并通过为此目的提供的一组 API 与 Cortana 的 UI 通信,这些 API 受设计限制。
您尝试执行的任何需要您进入 UI 线程的操作都将因同样的原因而失败。您可以尝试在您的应用程序中托管 Web 控件,但要从等式中删除链式启动的浏览器。