我已经设置了一个语音识别服务,如这篇文章Android Speech Recognition as a service on Android 4.1 & 4.2中所示,当我使用离线识别(将手机置于平面模式)时,它只在 onResults() 中显示 1 个结果在在线模式下,我总是得到超过 5 个结果。
我使用这个 Intent :
mSpeechRecognizerIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
mSpeechRecognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
mSpeechRecognizerIntent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE,
this.getPackageName());
mSpeechRecognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "fr-FR");
mSpeechRecognizerIntent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 10);
我切换到英语,它也做了同样的事情。我还尝试了网络搜索而不是自由形式。
我想知道是否有一些神奇的代码可以让它工作,或者是否不可能将多个结果与离线识别结合起来。
先感谢您