使用Cortana和一个参数运行UWP应用程序
我正在尝试以命令行样式使用Cortana/Start: (按开始写入:) MyApp参数\u我\u想要\u传递\u给\u我的\u应用 这是我的使用Cortana和一个参数运行UWP应用程序,uwp,cortana,Uwp,Cortana,我正在尝试以命令行样式使用Cortana/Start: (按开始写入:) MyApp参数\u我\u想要\u传递\u给\u我的\u应用 这是我的voiceCommands.xml文件的一部分: <Command Name="mycommand"> <Example> something </Example> <ListenFor RequireAppName="BeforePhrase">{parameter}</ListenFor&g
voiceCommands.xml
文件的一部分:
<Command Name="mycommand">
<Example> something </Example>
<ListenFor RequireAppName="BeforePhrase">{parameter}</ListenFor>
<Feedback> Doing something with: {parameter} </Feedback>
<Navigate />
</Command>
它不起作用。在文档中有一些关于PhaseTopic
和在阶段开始时使用它的限制。但这些限制仅在名称
是“AfterPhrase”
或“ExplicitlySpecified”
时才存在(在我的示例中,在phrase之前有)
当添加一个单词时,一切正常:
<ListenFor RequireAppName="BeforePhrase">word {parameter}</ListenFor>
word{parameter}
“命令”改为:
MyApp word参数\u我希望\u将\u传递给\u我的\u应用
这是一个毫无意义的词
所以问题是如何使用Cortana将参数传递给我的应用程序?
编辑
正如Jay Zou-MSFT所显示的那样,只有使用app name才能将参数传递给app。
问题出在Cortana和应用程序调试之间。每次应用程序生成后都未刷新命令列表
卸载应用程序、清除Cortana历史记录、重新启动计算机并再次安装应用程序
有帮助
我从代码中看到的唯一问题是,您在短语主题中使用了错误的标签。在命令
中,您正在使用“参数”作为标签。因此,在短语主题
中,标签
也应该是“参数”而不是“目的地”
在此之后,您的命令应该能够工作。例如,一旦我们将命令
和短语主题
添加到其VCD文件中,我们就可以使用Cortana启动应用程序,方法如下:
“冒险工程这是一个测试”
您可能需要检查是否正确识别AppName。例如,此处的工作语音命令必须以“adventure works”开头。如果您的发言被识别为“AdventureWorks这是一个测试”,那么它将不起作用
如您所知,测试已注册语音命令的一种简单方法是在Cortana搜索框中键入命令,如下所示:
有了以上输入,应该没有问题。“目的地”只是用“参数”制作问题样本后的剩余物。这在我的应用程序中是正确的。好的一点是它应该是有效的。但这在我的情况下不起作用。Cortana在更改voiceCommand.xml时不知怎么搞糊涂了。。。有没有办法在Cortana中更新语音命令?
<ListenFor RequireAppName="BeforePhrase">word {parameter}</ListenFor>
<PhraseTopic Label="parameter" />