Nuance的DragonMobile组件显然在初始调用SKRecognizer
的initWithType:detection:language:delegate
与组件调用recognizerDidFinishRecording:
之间关闭了VoiceOver公告。他们这样做是有道理的,因为他们不希望VoiceOver通知被麦克风接收并转录。
问题在于,识别器的初始化和对recognizerDidBeginRecording:
的初始调用之间通常存在1-2秒的间隔。为了防止用户的前几个单词被抄写出来,有必要使用recognizerDidBeginRecording:
向用户指示他们应该开始讲话(即,您不能只是让他们按下麦克风按钮并立即开始讲话) 。
我的问题是,由于DragonMobile会在调用initWithType:
时立即关闭VoiceOver,因此我无法向VoiceOver用户指示他们应该在适当的时间开始通话。
最佳答案
找到了一种解决方法:DragonMobile允许您指定SKEarcon
,它们是在开始,停止或取消录制时播放的音频文件。我将录制VoiceOver发出所需的通知,然后将这些录音用作耳塞,这样听起来就像VoiceOver的其余部分一样。
根据我刚才谈到的Nuance技术代表的说法,DragonMobile确实确实接管了音频层并抑制了录制过程中的任何输出,除了耳塞之外,它们没有暴露任何其他方式。
关于ios - 如何防止Nuance的DragonMobile关闭VoiceOver?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15841977/