2016-09-19 82 views
2

我有一個使用AVPlayer在Swift中播放mp3音頻文件的非常簡單的方法。使用AVPlayer在Swift中播放音頻文件

問題是,它看起來太簡單了。例如,在播放出現問題的情況下,文件問題(設備音頻問題),播放如何優雅地失敗而不是應用程序崩潰?

或者下面的回放代碼安全嗎?

import UIKit 

import AVFoundation 

var audioPlayer:AVPlayer! 

class ViewController: UIViewController { 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     audioPlayer = AVPlayer(URL: NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("myResourceFileName", ofType: "mp3")!)) 
     audioPlayer.play() 

    } 

} 
+1

使用if let語句測試pathForResource。不要強行拆包。 – pedrouan

回答

-1

你爲什麼不嘗試「做」和「抓」?

do {let path = NSBundle.mainBundle().pathForResource("myResourceFileName", ofType: "mp3") 
    let soundUrl = NSURL(fileURLWithPath: path!) 
    try audioPlayer = AVAudioPlayer(contentsOfURL: soundUrl) 
     audioPlayer.prepareToPlay()    
    } catch let err as NSError { 
     print(err.debugDescription) 
    } 

,並放置 audioPlayer.play() 在您想要播放的功能。