问题是:我在swift上实现了textToSpeech,奇怪的是它在我的iPhone上不起作用,但是当我使用模拟器时它就可以了!
这是一个简单的代码:
import UIKit
import AVFoundation
class ViewController: UIViewController, AVSpeechSynthesizerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func buttonPushed(sender: UIButton) {
let utterance = AVSpeechUtterance(string:"This is a test")
utterance.voice = AVSpeechSynthesisVoice(language: "en-US")
let voice = AVSpeechSynthesizer()
voice.delegate = self
voice.speak(utterance)
}
}
在我将xcode更新到9.2版之前,它曾经工作过,所以我不知道该怎么做。花了一整天这一点,什么也没有! 奇怪的是,有另一个视图控制器,我用它来录制语音并将其传递给文本(speechToText),当我尝试这个,然后textToSpeech开始在我的iPhone上工作,这是它的唯一工作方式。我不知道为什么我的textToSpeech和speechToText在不同的视图控制器中并且它们不相关。
非常感谢任何帮助!