Ios 在swift 2中播放音频的异常EXC_BAD_指令
我试图在swift 2中播放音频,但出现错误:Ios 在swift 2中播放音频的异常EXC_BAD_指令,ios,avaudioplayer,ios9,Ios,Avaudioplayer,Ios9,我试图在swift 2中播放音频,但出现错误: Thread 1: EXC_BAD_INSTRUCTION(code=EXC_I386_INVOP, subcode = 0x0) 有些东西从swift 1变为2,所以我加入了do catch短语,但现在它不起作用了 代码: 谁能帮我?所以我终于找到了问题所在。导入音频文件时,我必须选中“添加到目标”框 非常感谢您的帮助。Xcode是一个开发环境,与您的问题无关。显示崩溃的堆栈跟踪。发生在我声明var ButtonAudioURL的地方如果在vi
Thread 1: EXC_BAD_INSTRUCTION(code=EXC_I386_INVOP, subcode = 0x0)
有些东西从swift 1变为2,所以我加入了do catch短语,但现在它不起作用了
代码:
谁能帮我?所以我终于找到了问题所在。导入音频文件时,我必须选中“添加到目标”框
非常感谢您的帮助。Xcode是一个开发环境,与您的问题无关。显示崩溃的堆栈跟踪。发生在我声明var ButtonAudioURL的地方如果在
viewDidLoad
内部初始化ButtonAudioURL
会怎么样?没有任何变化,我得到的错误与您不能得到的错误相同,因为变量声明现在没有做任何事情。它应该是空的。删除ButtonAudioPlayer
的(无意义的)初始化,以及在viewDidLoad
中已经初始化的初始化。我在游乐场中测试了行“var ButtonAudioURL…”,同样的错误,然后我将声音文件添加到游乐场资源中,然后它工作了。
import UIKit
import AVFoundation
class ViewController: UIViewController {
@IBOutlet weak var PausePlay: UIButton!
--> var ButtonAudioURl = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("Tutava", ofType: "aif")!)
var ButtonAudioPlayer = AVAudioPlayer()
override func viewDidLoad() {
super.viewDidLoad()
do {
ButtonAudioPlayer = try AVAudioPlayer(contentsOfURL: ButtonAudioURl)
} catch _ {
}
}
@IBAction func PlayAudio(sender: AnyObject) {
ButtonAudioPlayer.play()
}
}