Android - 语音识别器不稳定

时间:2017-07-04 09:09:38

标签: android android-intent speech-recognition

我尝试在android上使用语音文本。我写了一个简单的代码并尝试了两个设备(华为Android 6 api-level 23,三星Android 6 api-level 23)。

我的例子取自this link

用户在运行时获得的权限:

<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

两个设备之间存在许多不同的行为。华为设备在5秒后静默调用onError回调。但是在三星设备上,它并没有在沉默中调用onError。它也没有调用onEndOfSpeech.So我尝试终止识别器。如果我使用recognizer.stoplistening();手动停止,它会多次调用onError。

此示例中是否有任何错误设置?如何为语音文本开发更稳定的应用程序?

1 个答案:

答案 0 :(得分:0)

语音识别器有一个非常特殊的行为,也许三星检测到它的麦克风比华为检测到更多的噪音。当你完成说话以完成听力时,SpeechReconizer会自行决定,并且修改静音时间的设置不起作用。这是2011年的一个漏洞,谷歌不想修复它。