Swift AVAudioPlayer不再工作了
这个程序以前是有效的,我不相信我改变了什么。这是代码。我收到抛出的错误:未找到文件:bgMusicSwift AVAudioPlayer不再工作了,swift,avaudioplayer,Swift,Avaudioplayer,这个程序以前是有效的,我不相信我改变了什么。这是代码。我收到抛出的错误:未找到文件:bgMusic import SpriteKit import AVFoundation class GameScene: SKScene, SKPhysicsContactDelegate { var backgroundMusicPlayer = AVAudioPlayer() func playBackgroundMusic(filename: String) { le
import SpriteKit
import AVFoundation
class GameScene: SKScene, SKPhysicsContactDelegate {
var backgroundMusicPlayer = AVAudioPlayer()
func playBackgroundMusic(filename: String) {
let url = NSBundle.mainBundle().URLForResource(filename, withExtension: nil)
guard let newURL = url else {
print("Could not find file: \(filename)")
return
}
do {
backgroundMusicPlayer = try AVAudioPlayer(contentsOfURL: newURL)
backgroundMusicPlayer.numberOfLoops = -1
backgroundMusicPlayer.prepareToPlay()
backgroundMusicPlayer.play()
} catch let error as NSError {
print(error.description)
}
}
override init(size: CGSize) {
super.init(size: size)
playBackgroundMusic("bgMusic")
}
请尝试获取文件路径。每次都是这样
//Change 'ofType' to whatever the file type is. (.m4a, .mp3, etc.)
let path = NSBundle.mainBundle().pathForResource(filename, ofType: ".mp3")
let url = NSURL.fileURLWithPath(path!)
然后将url加载到AVAudioPlayer中
如果这不起作用,请确保文件名正确,并将其添加到项目中。祝你好运 尝试获取文件路径。每次都是这样
//Change 'ofType' to whatever the file type is. (.m4a, .mp3, etc.)
let path = NSBundle.mainBundle().pathForResource(filename, ofType: ".mp3")
let url = NSURL.fileURLWithPath(path!)
然后将url加载到AVAudioPlayer中
如果这不起作用,请确保文件名正确,并将其添加到项目中。祝你好运 “可选类型'String'的值未展开;是否要使用'!'或'?'?'?”这在第二行,通过添加'!'展开可选类型。”在路径之后。如果您添加了文件,则可以安全地假定您的文件在那里。如果它崩溃,则您的文件可能不在项目中,或者文件名错误。“可选类型“字符串”的值未展开;您的意思是使用“!”还是“?”?“这在第二行,通过添加“!”展开可选类型在路径之后。如果您添加了文件,则可以安全地假定您的文件在那里。如果崩溃,那么您的文件可能不在项目中,或者文件名错误。