当我初始化AVAudio播放器时,我发现nil错误。 音乐文件包含在名为“Sounds”的文件夹中。
致命错误:在解开可选值时意外发现nil
//Code
// instance
var player : AVAudioPlayer = AVAudioPlayer();
// ciews
override func viewDidLoad() {
super.viewDidLoad()
// SET UP AUDIO PLAYER AND PLAY A SOUND
var filePath = NSString(string: NSBundle.mainBundle().pathForResource("Sounds/pig", ofType: "mp3")!);
var error:NSError? = nil; // craete error pointer with ampersand &
// EXCEPTION THROWN HERE
player = AVAudioPlayer(contentsOfURL: NSURL(string: filePath), error: &error);
赞赏任何输入
答案 0 :(得分:2)
问题是它是一个本地文件所以而不是字符串:(用于链接)你使用fileURLWithPath:会工作,但你可以使用URLForResource(_:withExtension :)而不是pathForResource一步完成:< / p>
let fileUrl = NSBundle.mainBundle().URLForResource("Sounds/pig", withExtension: "mp3")!
player = AVAudioPlayer(contentsOfURL: fileUrl, error: &error)