ios - 声音无法在设备上播放,但可以在模拟器上播放

标签 ios swift ios-simulator avaudioplayer audio

是的,我环顾四周。

var congratzSound = NSBundle.mainBundle().URLForResource("Sweg.aiff", withExtension: "aiff")
var congratzPlayer:AVAudioPlayer? = AVAudioPlayer()
congratzPlayer = AVAudioPlayer(contentsOfURL: congratzSound, error: nil)
if let congratzPlayer = audioPlayer {
            congratzPlayer.play()
        }

该代码符合要求很好,该文件位于“支持文件”部分中,并且已复制到设备中。
我究竟做错了什么?文件扩展名不能播放吗? congratzSound设置错误吗?

提前致谢。

最佳答案

使用以下方法可以解决您的问题:

var congratzSound = NSBundle.mainBundle()。URLForResource(“Sweg”,withExtension:“aiff”)

如果那不起作用,请尝试:

var congratzSound = NSURL(fileURLWithPath:NSBundle.mainBundle()。pathForResource(“Sweg”,ofType:“aiff”)!)

另外,请检查代码项目中文件名是否为原样(Sweg.aiff),并且该文件名是否存在于您的应用程序文件夹中。

您的设备可能在尝试播放声音时正在寻找Sweg.aiff.aiff,这显然不存在

关于ios - 声音无法在设备上播放,但可以在模拟器上播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27197581/

相关文章:

ios - mtouch --device=VALUE 选项可接受的值是什么?

ios - 在模拟器上崩溃,而不是在设备上

ios - 将 MTAudioProcessingTap 与 AVAssetExportSession 结合使用

ios - 在构建应用程序之前从 Info.plist 文件中删除一个简单的 key

iOS Metal 。如何将 'half' 格式用于所有颜色作品?

swift - AlamofireImage Collection 单元在下载后将图像放入 AutoPurgingImageCache

ios - 如何跟踪多次触摸

swift - 如何在 Swift/XCTest 中写入本地文件?

xcode - iPhone 模拟器无法在外部显示器上正确显示

ios - 是不是默认背景色?