-->

WP8.1: Cortana uri association?

2020-04-18 07:17发布

问题:

Does Cortana have a uri association, or another way to be launched from other apps?

I already tried

await Launcher.LaunchUriAsync(new Uri("cortana:///"));

await Launcher.LaunchUriAsync(new Uri("ms-settings-cortana:///"));

but they don't work...

回答1:

I know this is a few months after this was asked, but for anyone else looking to launch Cortana you can do it by calling this:

await Launcher.LaunchUriAsync(new Uri("bing://home"));    


回答2:

I don't know if there's a cleaner way, but you can take advantage of the fact that the Cortana/Bing search page is displayed when the user try to load the Bing website.

So you can hide a WebBrowser control in your page (by setting its visibility to collapsed), then navigate to Bing when you want to launch Cortana:

this.WebBrowser.Navigate(new Uri("http://www.bing.com"));


回答3:

Well, in Windows 10 TH2/RS1 (Which I've tested by now), Cortana has supports following undocumented Uris:

  • ms-cortana://
  • ms-cortana://StartMode=Coobe
  • ms-cortana://StartMode=Reminders
  • ms-cortana://StartMode=Notebook
  • ms-cortana://StartMode=Settings

And there is blog posted by Chinese UWP App Team. :smile:



回答4:

Well at least on Windows 10, the way to launch Cortana in listening mode is using this Uri: ms-cortana://Reactive/?StartMode=Reactive&ListeningMode=True

Test it in Edge, it works for me. Doesn't seem to work in Chrome though (as of this time).



回答5:

Cortana does support a few "deep linking" capabilities. You need a registered protocol handler installed (that is the case for W10 desktop by default.)

https://techcommunity.microsoft.com/t5/Cortana-Skills-Kit-Blog/Skill-Shortcut-Share-your-Cortana-Skill-with-users/ba-p/154484