La aplicación se bloquea con el siguiente mensaje de error
2019-10-12 20:01:34.332334-0700 Awesome App[26368:3535170] [plugin] AddInstanceForFactory: No factory registered for id <CFUUID 0x600002903280> F8BB1C28-BAE8-11D6-9C31-00039315CD46
El punto de interrupción en el accidente parece estar relacionado con AVAudioPlayer
let path = Bundle.main.path(forResource: "menu_background.mp3", ofType:nil)!
audioPlayer = try AwesomeAudioPlayer(contentsOf: URL(fileURLWithPath: path)) ---> breakpoint
Creo que el mensaje de error es una advertencia para los simuladores, por lo tanto, no es importante.
Creo que tu problema es un error en tu código. Debería ser algo como esto:
let path = Bundle.main.path(forResource: "menu_background", ofType:"mp3") audioPlayer = try AwesomeAudioPlayer(contentsOf: URL(fileURLWithPath: path!)) ---> breakpoint
Donde forResource es el nombre del archivo y ofType es la extensión. También puede usar Bundle.main.url que se verá así:
let path = Bundle.main.url(forResource: "menu_background", withExtension:"mp3") audioPlayer = try AwesomeAudioPlayer(contentsOf: URL(fileURLWithPath: path!)) ---> breakpoint
fuente
Puede usar do / catch para evitar el bloqueo y examinar la excepción, o ignorar el problema junto con
try?
. Para mí, esto solo aparecía en el simulador cuando llamaba:try? AVAudioSession.sharedInstance().setCategory(.playback)
Creo que es seguro ignorarlo en mi caso.
fuente
Creo que todos ustedes podrían haber agregado la Fundación AV a la lista de marcos en la pestaña Información general del proyecto.
El código erróneo fue el siguiente:
Y después de que moví la
var audioPlayer: AVAudioPlayer
declaración justo después de la línea deimport AVFoundation
línea, parecía estar funcionando.Entonces, el siguiente código funcionó para mí en un
SwiftUI
proyecto.}
Inicialmente estaba siguiendo este tutorial de CodeWithChris y su discusión también condujo al cambio anterior. También consulte el siguiente tutorial si necesita más ejemplos.
¡Espero que esto sea útil para alguien de ustedes!
¡Salud!
fuente