There's a setting under Speech, Inking, and Typing. To get there,
1. First, go to Settings and click "Time & Language".
2. Select the "Speech" option.
3. Go to the "Speech, Inking & Typing privacy settings".
4. Then, click on the pop-up and turn the setting ON.
After that, any software that uses the Speech Recognition API will work.
A helpful way to tell users to turn on would be...
catch (System.Runtime.InteropServices.COMException e) when (e.HResult == unchecked((int)0x80045509))
ContentDialog Dialog = new ContentDialog()
Content = "You need to turn on a button called 'Get to know me'...",
PrimaryButtonText = "Shut up",
SecondaryButtonText = "Shut up and show me the setting"
if (await Dialog.ShowAsync() == ContentDialogResult.Secondary)
const string uriToLaunch = "ms-settings:privacy-speechtyping";
var uri = new Uri(uriToLaunch);
var success = await Windows.System.Launcher.LaunchUriAsync(uri);
if (!success) await new ContentDialog
Title = "Oops! Something went wrong...",
Content = "The settings app could not be opened.",
PrimaryButtonText = "Shut your mouth up!"