问题描述
我正在尝试使用@ionic-native/speech-recognition
以便在ios中使用本机语音识别功能。
它将正确提示权限,并检查该功能在系统上是否可用。通过检查后,它会调用startListening(speechRecognitionoptions).subscribe(...)
有时会起作用,但更常见的是会引发错误:
startListening()
+ [AFAggregator logDictationFailedWithError:]错误域= kAFAssistantErrorDomain代码= 4“(null)” UserInfo = {NSUnderlyingError = 0x600001081c20 {Error Domain = SiriCoreSiriConnectionErrorDomain代码= 4“(null)”}}
startListening()识别任务错误:错误 域= kAFAssistantErrorDomain代码= 4“(空)” UserInfo = {NSUnderlyingError = 0x600001081c20 {Error Domain = SiriCoreSiriConnectionErrorDomain代码= 4“(null)”}}
错误:无法阅读语音:错误域= kAFAssistantErrorDomain 代码= 4“(空)” UserInfo = {NSUnderlyingError = 0x600001081c20 {Error Domain = SiriCoreSiriConnectionErrorDomain代码= 4“(null)”}}
几秒钟的等待后,我收到此错误,所以这就像它正在尝试执行HTTP请求,并且超时。但是我尝试了不同的网络,wifi,热点,物理设备和仿真器,无论是否安装了VPN,但是我系统地收到了该错误。
在Apple文档中没有引用来解释kAFAssistantErrorDomain
,因此我不知道 code = 4 的含义。
以下是代码段:
const sr = new SpeechRecognition();
const speechRecognitionoptions = {
language: 'it-IT',showPartial: true
};
sr
.isRecognitionAvailable()
.then(isAvailable => {
if (!isAvailable) throw new Error('Servizio di riconoscimento vocale integrato non disponibile');
return sr.hasPermission();
}).then(hasAlreadyPermission => {
if (!hasAlreadyPermission) return sr.requestPermission();
return Promise.resolve();
}).then(() => {
sr.startListening(speechRecognitionoptions)
.subscribe(lines => console.log(lines),err => console.error('Cannot read speech: ',err)); // It goes here <----
}).catch(err => {
console.error('Speech recognition not available: ',err);
});
如何解决(或调试)问题? 谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)