2014-03-30 100 views
0

我在Windows Phone 8中有一个以下要求,在来电或拨出电话时在后台代理中运行语音监听器。当没有电话时,语音监听器应该停止。呼叫中的语音识别:Windows Phone 8

例如:当我提起来电并说话时。我想说一个声音命令说“扬声器”,然后扬声器应该打开

我看到模糊事件可以用于检测呼叫。但我无法从后台代理启动语音监听器。请协助。

这里是我使用的ScheduledAgent.cs文件的方法,但没有运气

private async void SpeakTest() 
{ 
    SpeechRecognizerUI speechRecognition = new SpeechRecognizerUI(); 

    SpeechRecognitionUIResult recoResult = await speechRecognition.RecognizeWithUIAsync(); 
    if (recoResult.ResultStatus == SpeechRecognitionUIStatus.Succeeded) 
    { 
     lblMessage.Text = recoResult.RecognitionResult.Text; 
    } 
} 

回答

0

首先,你不能运行,只要你想有一个后台任务。 OS将决定何时运行您的任务代理。它不会连续运行。相反,它会运行在区间
第二,在Windows Phone 8(不在其他地方)麦克风是静音的外部应用程序。
第三,您不应该尝试从后台代理运行SpeechRecognizerUI