我的背景音乐怎么了?
What happened to my background music?
所以,我有了这个应用程序,并加入了一些背景音乐以使其更好。一切正常,但我认为背景音乐没有达到应有的水平。我找到了另一个音乐文件,把它放在我的项目中,然后在代码中更新了文件名,然后……没有声音。很困惑,我把原来的文件名放回代码里……还是没有声音。所以……之前有效的方法不再有效了——而且我还没有对 xcode/etc 进行任何更新或任何操作。有人想试一试如何解决这个问题吗?或者……它怎么可能发生,所以我以后可以避免它?这是代码:
import AVFoundation
var backgroundMusicPlayer: AVAudioPlayer!
// old function, works in another app but not this one ... derp
func playBackgroundMusic(filename: String) {
let url = NSBundle.mainBundle().URLForResource(
filename, withExtension: nil)
if (url == nil) {
println("Could not find file: \(filename)")
return
}
var error: NSError? = nil
backgroundMusicPlayer =
AVAudioPlayer(contentsOfURL: url, error: &error)
if backgroundMusicPlayer == nil {
println("Could not create audio player: \(error!)")
return
}
backgroundMusicPlayer.numberOfLoops = -1
backgroundMusicPlayer.prepareToPlay()
backgroundMusicPlayer.play()
}
哦,我在viewdidload中调用播放器播放:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
playBackgroundMusic("violetshrine.caf")
我在 swift 中阅读了各种关于处理声音的文章...似乎有很多不同的方法,但这是以前有效的代码,甚至在我正在构建的另一个应用程序中工作......所以我真的很困惑(新手的生活)。感谢所有花时间阅读本文的人。
所有图像、音频等文件都需要成为捆绑资源的一部分。请检查以下两点
- 确保您添加的文件确实添加到您的构建目标中,而不仅仅是 Xcode 层次结构。
- 确保从 device/simulator 中删除该应用程序并清理项目(Xcode 应用程序菜单中的
Product->Clean
),并且在您 add/remove/update一个资源文件。
这是假设您的代码 is/was 工作正常(正如您在问题中声称的那样)。
所以,我有了这个应用程序,并加入了一些背景音乐以使其更好。一切正常,但我认为背景音乐没有达到应有的水平。我找到了另一个音乐文件,把它放在我的项目中,然后在代码中更新了文件名,然后……没有声音。很困惑,我把原来的文件名放回代码里……还是没有声音。所以……之前有效的方法不再有效了——而且我还没有对 xcode/etc 进行任何更新或任何操作。有人想试一试如何解决这个问题吗?或者……它怎么可能发生,所以我以后可以避免它?这是代码:
import AVFoundation
var backgroundMusicPlayer: AVAudioPlayer!
// old function, works in another app but not this one ... derp
func playBackgroundMusic(filename: String) {
let url = NSBundle.mainBundle().URLForResource(
filename, withExtension: nil)
if (url == nil) {
println("Could not find file: \(filename)")
return
}
var error: NSError? = nil
backgroundMusicPlayer =
AVAudioPlayer(contentsOfURL: url, error: &error)
if backgroundMusicPlayer == nil {
println("Could not create audio player: \(error!)")
return
}
backgroundMusicPlayer.numberOfLoops = -1
backgroundMusicPlayer.prepareToPlay()
backgroundMusicPlayer.play()
}
哦,我在viewdidload中调用播放器播放:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
playBackgroundMusic("violetshrine.caf")
我在 swift 中阅读了各种关于处理声音的文章...似乎有很多不同的方法,但这是以前有效的代码,甚至在我正在构建的另一个应用程序中工作......所以我真的很困惑(新手的生活)。感谢所有花时间阅读本文的人。
所有图像、音频等文件都需要成为捆绑资源的一部分。请检查以下两点
- 确保您添加的文件确实添加到您的构建目标中,而不仅仅是 Xcode 层次结构。
- 确保从 device/simulator 中删除该应用程序并清理项目(Xcode 应用程序菜单中的
Product->Clean
),并且在您 add/remove/update一个资源文件。
这是假设您的代码 is/was 工作正常(正如您在问题中声称的那样)。