好的,我有一个支持Cortana的应用程序。 我有一些命令导航到特定页面。但在某些情况下,我只想提供一个回复(文本或由Cortana发音),而不是启动整个应用程序。有没有办法做到这一点?
例如,当你问Cortana “什么是美国的资本?”时,她只会回复你“华盛顿”。我想做那样的事。
答案 0 :(得分:2)
查看此tutorial的底部,详细说明如何设置她所说和所显示的内容。
基本上你需要有一个后台任务,它可以从语音命令执行,然后在执行过程中你需要创建一个VoiceCommandUserMessage
。
使用VoiceServiceConnection
taskInstance.TriggerDetails
voiceServiceConnection =
VoiceCommandServiceConnection.FromAppServiceTriggerDetails(
triggerDetails);
等待语音命令完成
VoiceCommand voiceCommand = await voiceServiceConnection.GetVoiceCommandAsync();
然后添加
VoiceCommandUserMessage userMessage = new VoiceCommandUserMessage();
userMessage.DisplayMessage = "Here’s your trip.";
userMessage.SpokenMessage = "Your trip to Vegas is on August 3rd.";
将其包装在回复中
var response =
VoiceCommandResponse.CreateResponse(
userMessage);
最后,让Cortana展示它:
await voiceServiceConnection.ReportSuccessAsync(response);
答案 1 :(得分:2)
据我了解,这仅适用于Windows 10应用程序。