2017-06-24 3 views
1

を押すたびにThread1:EXC_BAD_ACCESS(code=1, address = 0X48)が表示されます。私は私の接続をチェックし、私のmp3ファイルの "曲"は正しいです。私は何が間違っているのか分かりません。私のボタンは正常に動作しますが、ボタンがプログラムをクラッシュさせてエラーを返すことを許さないのはAVAudioPlayer (var Player)です。どんな助けでも大歓迎です(私はSwiftの初心者です)。スレッド1:EXC_BAD_ACCESS(コード= 1、アドレス= 0X48)AVAudioPlayer(Swift)

import UIKit 
import AVFoundation 

class ViewController: UIViewController { 

    var player:AVAudioPlayer = AVAudioPlayer() 

    @IBAction func play(_ sender: UIButton) { 

     player.play() 
    } 

    @IBAction func pause(_ sender: UIButton) { 
     player.pause() 
    } 

    @IBAction func replay(_ sender: UIButton) { 
     player.currentTime = 0 
    } 


    override func viewDidLoad() { 
     super.viewDidLoad() 
     // Do any additional setup after loading the view, typically from a nib. 

      do{ 
       let audioPath = Bundle.main.path(forResource: "song", ofType: "mp3") 
       try player = AVAudioPlayer(contentsOf: NSURL(fileURLWithPath: audioPath!) as URL) 
      } 
      catch{ 
       //error 
      }           
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    }    
} 
+0

私は自分の接続を確認しました。 player.play()の何が問題なのかよく分かりません – Edward

答えて

0

は、私はあなたに

1.Whetherプレイヤーがメインで実行されているこの問題を確認してください同じコードプロジェクトを作成しますが、

var player:AVAudioPlayer = AVAudioPlayer() 
lazy var btn: UIButton = { 
    var btn = UIButton.init(frame: CGRect.init(x: 20, y: 20, width: 60, height: 60)) 
    btn.backgroundColor = .red 

    btn.addTarget(self, action: #selector(ViewController.play), for: .touchUpInside) 
    return btn 
}() 
override func viewDidLoad() { 
    super.viewDidLoad() 

    self.view.addSubview(btn) 
    do{ 
     let audioPath = Bundle.main.path(forResource: "song", ofType: "mp3") 
     try player = AVAudioPlayer(contentsOf: NSURL(fileURLWithPath: audioPath!) as URL) 
    } 
    catch{ 
     //error 
    } 
} 
func play() { 
    player.play() 
} 

間違った

私のコードを持っていませんスレッド?

2.soong.mp3が存在し、再生できます

3.ストーリーボードが矛盾しています

関連する問題