【问题标题】:Speech recognition started and immediately failed with kAFAssistantErrorDomain error 7语音识别开始并立即失败,出现 kAFAssistantErrorDomain 错误 7
【发布时间】:2021-01-28 04:49:18
【问题描述】:

一些细节:
iOS14.0.1
Xcode 12.0.1
iPad Mini 第 5 代

我们的应用使用语音作为主要用户输入来导航功能。

应用启动后,语音识别正常工作。用户会开始说简单的英语单词(是/否),语音识别器会开始假设转录。

但是,经过几次迭代后,语音识别器将停止工作。它不会在用户说话时假设转录,而是直接跳转到 didFinish 任务委托并指示语音转录不成功,并显示以下错误消息:The operation couldn’t be completed. (kAFAssistantErrorDomain error 7.)

这个bug最近才出现在iOS14中,在iOS13中不是问题。我已经用谷歌搜索了这个错误代码/消息,但找不到太多细节。有谁知道这意味着什么/为什么会失败?

【问题讨论】:

  • 您找到解决方案了吗?我面临着非常相似的事情。
  • 并非如此。我们正在通过强制离线识别来解决这个问题。这有两个缺点:1.速度较慢且准确性较低,2.语言选择相对有限。如果您只关心识别英语,则此解决方法可能效果很好。
  • 感谢您的回复。您是否暗示此问题的根本原因是由于在线识别?如是。您是否有权访问任何说明这一点的开发人员资源?
  • 我仍然不确定根本原因是什么,并且我没有其他资源可以支持它,但这就是症状所暗示的。
  • 我现在也遇到了这个问题,你找到解决办法了吗?另外,您是如何强制设备识别的,您是否遇到过“尚未安装模型”的错误?

标签: swift speech-recognition ios14 xcode12


【解决方案1】:

在遇到同样的问题后,我发现在短时间内从SFSpeechRecognitionRequests 取消许多任务会产生这种行为。最好在您的SFSpeechRecognitionTasks 上调用.finish() 并仅在task.state 完成后创建一个新的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-29
    • 1970-01-01
    • 1970-01-01
    • 2016-10-17
    • 2015-12-28
    • 1970-01-01
    相关资源
    最近更新 更多