Мой код AVSpeechSynthesizer не работает на устройстве (iOS 10), но он работал на iOS 9.x и теперь работает в симуляторе.
let str = self.audioOutput //just some string here, this string exists, and it in english
let synth = AVSpeechSynthesizer()
let utterance = AVSpeechUtterance(string: str)
utterance.rate = AVSpeechUtteranceDefaultSpeechRate
let lang = "en-US"
utterance.voice = AVSpeechSynthesisVoice(language: lang)
synth.speakUtterance(utterance)
Я получаю эту ошибку:
MobileAssetError:1] Unable to copy asset attributes
Could not get attribute 'LocalURL': Error Domain=MobileAssetError Code=1 "Unable to copy asset attributes"
UserInfo={NSDescription=Unable to copy asset attributes}
0x1741495e0 Copy assets attributes reply: XPC_TYPE_DICTIONARY <dictionary: 0x1741495e0> { count = 1, transaction: 0, voucher = 0x0, contents =
"Result" => <int64: 0x1744203a0>: 1}
До этого появились сообщения об ошибках:
Unable to copy asset information from https://mesu.apple.com/assets/ for asset type
Кто-нибудь знает, как решить эту проблему? Я знаю, что есть некоторые обходные пути (пользователь должен пойти в Настройки- > Общие и переключить Speak Selection, например), но я не думаю, что это настоящее решение здесь.
Обновление: Я создал новый проект (XCode8/Swift3/no other pods/frameworks и т.д.). Он работает в симуляторе, но он дает мне те же ошибки на моем устройстве.
Обновление 2: Работает на устройстве. У меня есть аналогичные сообщения об ошибках (невозможно копировать атрибуты активов и т.д.), Но теперь это работает. Я не знаю, что это было.