Cortana应用程序和语音命令不显示或从Cortana工作
本文关键字:Cortana 工作 显示 命令 应用程序 语音 | 更新日期: 2023-09-27 18:06:21
当输入"what can I say?"时,应用程序和语音命令在Cortana中不显示。
我正在尝试使用语音命令在前台与Cortana和我运行Cortana语音命令样本,一直无法让Cortana显示应用程序或打开/执行语音命令的应用程序名为"AdventureWorks"。
我正在使用Cortana语音命令示例,我在Windows 10的调试中从Visual Studio 2015本地运行。根据这个链接,这应该在我的本地机器上创建一个解包版本的示例,我应该能够从开始屏幕看到,我不能。我已经在应用程序的功能下激活了麦克风,并包含了en-GB资源。resw文件并更改了包。为了确保Cortana的语言与应用程序匹配,以消除这个潜在的问题。
这是一个链接,显示应用程序的未打包版本在从VS运行应用程序(带或不带调试)后,应该在开始屏幕中可见:如何将Metro应用程序部署到桌面?
Cortana语音命令示例:https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/CortanaVoiceCommand
注意:除了我之外,应用程序是标准的,包括en-GB资源文件,更改包。将appxmanifest location设置为en-GB,并将麦克风添加到应用程序的功能中。我的电脑已经启用了开发者模式。
更新:添加vcd.xml到VoiceCommandDefinitionManager时没有异常发生。看起来应该可以用了。我还注意到,当运行样本时,我看不到伦敦的图片或麦克风图标显示"收听",就像这个视频:https://channel9.msdn.com/Events/Build/2015/3-716 at 04:16
此时google搜索"在Cortana中不显示应用程序"没有显示任何有用的结果。
还有其他人有幸让这个样本工作吗?或者类似的问题?你使用的是en-GB版本吗?
任何帮助或想法将不胜感激
我已经成功地使用en-US测试了adventureworks样本。此外,我还开发了另一个关于Cortana前景的示例。
基本上我已经创建了VCD,然后安装了它:
protected async override void OnLaunched(LaunchActivatedEventArgs e)
{
...
// Install the VCD
try
{
StorageFile vcdStorageFile = await Package.Current.InstalledLocation.GetFileAsync(@"HomeControlCommands.xml");
await VoiceCommandDefinitionManager.InstallCommandDefinitionsFromStorageFileAsync(vcdStorageFile);
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine("There was an error registering the Voice Command Definitions", ex);
}
}
然后处理激活:
protected override void OnActivated(IActivatedEventArgs e)
{
// Handle when app is launched by Cortana
if (e.Kind == ActivationKind.VoiceCommand)
{
VoiceCommandActivatedEventArgs commandArgs = e as VoiceCommandActivatedEventArgs;
SpeechRecognitionResult speechRecognitionResult = commandArgs.Result;
string voiceCommandName = speechRecognitionResult.RulePath[0];
string textSpoken = speechRecognitionResult.Text;
IReadOnlyList<string> recognizedVoiceCommandPhrases;
System.Diagnostics.Debug.WriteLine("voiceCommandName: " + voiceCommandName);
System.Diagnostics.Debug.WriteLine("textSpoken: " + textSpoken);
switch (voiceCommandName)
{
...
}
}
}
详细的过程在这里描述
我也有同样的问题。
请确保您的Package.appxmanifest
已打开麦克风功能,否则它将无法工作。
打开它,在解决方案资源管理器中选择Package.appxmanifest
,然后进入Capabilities
并检查Microphone
。
更多信息:http://jamescroft.co.uk/blog/universal-windows-8-dev/how-to-get-your-apps-cortana-ready/
希望这有帮助,damtur
我有和你一样的问题,正如DevEnitly所指出的,如果你的地区被设置,例如,到英国,在你的VCD文件中,你的CommandSet的语言是en-US它不会起作用,只需将CommandSet的语言更改为us-gb(或任何语言适合你的地区)应该做的技巧(它为我做了),还请注意,如果你想支持不同的语言,你应该添加更多的CommandSets。