ios - restaurar - ha ocurrido un problema al descargar el software para el iphone
¿Cómo resolvemos un error AXSpeechAssetDownloader en iOS? (5)
Esto significa que los recursos necesarios para hablar los idiomas requeridos no se han descargado, y la aplicación no lo hizo automáticamente. como @softwarenerd menciona, puede ir a Configuración -> General -> Voz, y luego ir a Voces y descargar las voces que necesite.
Pero entonces, esta no es realmente una buena solución si está desarrollando la aplicación para la tienda de aplicaciones. Debe haber una manera de manejar la descarga automáticamente y bajo demanda.
Tenemos una aplicación para iOS que usa AVSpeechSynthesizer para hablar. Funciona en el iPad y otros dispositivos, pero notamos que no funciona en nuestro iPhone 6 Plus.
Al examinar la salida de la consola vemos este error:
| AXSpeechAssetDownloader | error | Error en ASAssetQuery al obtener resultados Error Dominio = ASError Code = 21 "No se pudo completar la operación. (Error ASError 21 - No se puede copiar la información del activo)" UserInfo = 0x174a7e100 {NSDescription = No se puede copiar la información del activo}
El dispositivo en el que se ejecuta la aplicación tiene una conexión de red.
¿Alguna idea de cómo empezar a resolver esto?
Para mí, pude resolver esto estableciendo la voz de emisión después de la cadena de emisión.
speechUtterL1 = AVSpeechUtterance(string: ("أتمنى لك نهارا سعيد"))
speechUtterL1.voice = AVSpeechSynthesisVoice(language: "ar-SA")
En el reverso, donde configuro la voz solo una vez, se produce un error:
[TTS] Error al ejecutar la consulta de voz personalizada Error Dominio = ASError Code = 15 "No se puede copiar la información del activo desde https://mesu.apple.com/assets/ para el tipo de activo com.apple.MobileAsset.VoiceServices.GryphonVoice" UserInfo = { NSDescription = No se puede copiar la información de activos de https://mesu.apple.com/assets/ para el tipo de activo com.apple.MobileAsset.VoiceServices.GryphonVoice}
También puede ver este error si está pasando una cadena al constructor AVSpeechUtterance en el lenguaje A, pero le pide que lo pronuncie usando el idioma B.
Ejemplo:
let utterance = AVSpeechUtterance(string: "Hello")
utterance.voice = AVSpeechSynthesisVoice(language: "pl-PL")
En este caso "Hola" no es un idioma polaco (pl-PL). La aplicación muestra dicho error y puede (en algunos casos) pronunciar el texto.
Veo exactamente el mismo problema en iOS9. Aquí está mi alternativa, que no es perfecta pero al menos evita el choque.
let voices = AVSpeechSynthesisVoice.speechVoices()
for voice in voices {
if lang == voice.language {
utterance.voice = voice
break;
}
}
Yo estaba teniendo el mismo problema. No pude encontrar ninguna ayuda, así que tuve que depurarlo probando varias cosas.
Lo que descubrí es que si accede a Configuración -> General -> Voz, habilita "Hablar selección" y se entretiene con la voz en inglés, simplemente comenzará a trabajar para usted.
Déjeme saber si esto ayuda.