Swift 2 - AVAudioPlayer 不播放音频

Swift 2 - AVAudioPlayer not playing audio

我正在尝试使用 AVAudioPlayer 播放声音,但它无法播放。我尝试了一个设备(iPhone 6s)和模拟器。我没有收到任何错误,它记录了它的播放。当我在 audioPlayer.play() 之前设置断点并跨过它时,它会播放几秒钟然后停止。我的代码:

let soundURL = NSBundle.mainBundle().URLForResource("test", withExtension: "mp3")
        do {
            try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
            try AVAudioSession.sharedInstance().setActive(true)
            if let soundURL = soundURL {
                let audioPlayer = try AVAudioPlayer(contentsOfURL: soundURL)
                audioPlayer.volume = 1
                audioPlayer.delegate = self
                audioPlayer.prepareToPlay()
                print(audioPlayer.duration)
                audioPlayer.play()
                print("PLAYED")
            }
        }catch {
            print("Error getting the audio file")
        }

这是一个可行的示例。我不确定相对于您的其余代码,您在哪里拥有上面显示的代码。确保您的设备音量未处于静音状态并且已调高...

 //declare these as instance variables
var AudioURL = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("FileName", ofType: "mp3")!)
var AudioPlayer = AVAudioPlayer()

//inside viewDidLoad establish your AVAudioSession and configure the AudioPlayer with the contents of URL
override func viewDidLoad() {
   super.viewDidLoad()

   do {
       try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
        //print("AVAudioSession Category Playback OK")
    do {
        try AVAudioSession.sharedInstance().setActive(true)
          //print("AVAudioSession is Active")
    } catch let error as NSError {
        print(error.localizedDescription)
    }
   } catch let error as NSError {
       print(error.localizedDescription)
   }


   do {
       try AudioPlayer  = AVAudioPlayer(contentsOfURL: AudioURL, fileTypeHint: nil)
   } catch {
       print("errorin do-try-catch")
   }
}

  //play audio
  @IBAction func playAudio(sender: AnyObject){
      AudioPlayer.play()
  }