我们可以尝试使用AVSpeechUtterance来替换AVSpeechSynthesizer。以下是示例代码:
//创建AVSpeechUtterance
AVSpeechUtterance *utterance = [AVSpeechUtterance speechUtteranceWithString:@"Hello, World!"];
utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"en-US"];
utterance.rate = 0.5;
//实例化AVSpeechSynthesizer对象并播放
AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];
[synth speakUtterance:utterance];
上面的代码将创建一个AVSpeechUtterance对象,设置其属性,然后使用AVSpeechSynthesizer实例来播放它。这应该可以在iOS 16下正常工作。