在Swift项目中使用新的AVFoundation类运行时错误

时间:2014-06-10 20:03:18

标签: xcode swift

我正在尝试在Swift项目中使用一些新的AVFoundation类(例如AVAudioEngine,AVAudioFile)。

以下代码编译正常,但我在运行时收到错误:

let engine = AVAudioEngine() let player = AVAudioPlayerNode() engine.attachNode(player)

运行时错误:

dyld: Symbol not found: _OBJC_CLASS_$_AVAudioEngine Referenced from: /Users/jamie/Library/Developer/Xcode/DerivedData/TestAVAudioEngineSwift-btgetxkmjogozkbndstxrmmtnncb/Build/Products/Debug/TestAVAudioEngineSwift.app/Contents/MacOS/TestAVAudioEngineSwift Expected in: /System/Library/Frameworks/AVFoundation.framework/Versions/A/AVFoundation in /Users/jamie/Library/Developer/Xcode/DerivedData/TestAVAudioEngineSwift-btgetxkmjogozkbndstxrmmtnncb/Build/Products/Debug/TestAVAudioEngineSwift.app/Contents/MacOS/TestAVAudioEngineSwift

Objective-C中的等效代码编译并运行良好。

它正在/System/Library/Frameworks寻找框架似乎有点奇怪。我尝试将AVFoundation.framework从Xcode6-beta应用程序包拖到我的项目中,但这并没有解决问题。

我在Swift方面做错了什么? Xcode配置问题?

编辑:我已经使用import AVFoundation

导入AVFoundation

1 个答案:

答案 0 :(得分:0)

此问题可以通过升级到OS X 10.10来解决,OS X 10.10包含更新的AVFoundation框架。

AVFoundation类在OS X 10.9上的Swift应用程序中导致运行时错误的事实是一个错误,并且已经通过Apple bug报告器报告。