将Google搜索更新为5.14.32.16.arm

时间:2016-06-15 10:48:21

标签: android speech-recognition

我正在使用安装了Google搜索版本3.6.14.1337016的SpeechRecognizer(在Android 4.4.2上),使用2种语言en-USzh_HK。我最近将Google搜索(重命名为Google App)更新为版本5.14.32.16.arm,返回结果的速度为(大约需要35秒)。这是我的代码:

speechRecognizer = SpeechRecognizer.createSpeechRecognizer(this);
speechRecognizer.setRecognitionListener(new CustomListener());
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "zh_HK");
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE, "zh_HK");
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, getClass().getPackage().getName());
intent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 1);
intent.putExtra(RecognizerIntent.EXTRA_PARTIAL_RESULTS, !isOnline());
intent.putExtra("android.speech.extra.EXTRA_ADDITIONAL_LANGUAGES", new String[]{"zh_HK", "en-US"});
speechRecognizer.startListening(intent);

其中CustomListener()捕获onErroronResultsisOnline()检测网络是否可用。

在更新Google搜索之前,结果会在3秒内返回。以下是更新后的时间表:

18:42:05.183 - onReadyForSpeech
18:42:05.513 - onBeginningOfSpeech
18:42:10.208 - onEndOfSpeech
18:42:45.663 - onResults

如何加快结果检索?

此外,由于我包含了zh_HK,因此结果包含中文字符。但是,在每个字符之后添加空格。

更新前:

hello 你好嗎

更新后:

hello 你 好 嗎

这是一个已知的错误吗?

额外发现:

如果我卸载了所有离线语音识别语言,SpeechRecognizer将有90%的机会返回SpeechRecognizer.ERROR_NETWORK,而结果返回的可能性很小。这有什么关系?我检查了设备是否在线。

0 个答案:

没有答案