【发布时间】:2014-09-20 14:32:48
【问题描述】:
在我的 Swift 项目中,我需要通过 ScriptingBridge 框架与 iTunes 进行通信。根据Apple文档,我使用sdef /Applications/iTunes.app | sdp -fh --basename iTunes创建iTunes.h文件,然后将ScriptingBridge.framework链接到项目并使用#import "iTunes.h"创建AppName-Bridging-Header.h文件。
但是当我尝试获取任何 iTunes 应用程序属性时,例如
var iTunesApp: iTunesApplication? = SBApplication.applicationWithBundleIdentifier("com.apple.iTunes") as? iTunesApplication
let currentTrack: iTunesTrack? = iTunesApp?.currentTrack
我得到类似的链接器错误
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_iTunesApplication", referenced from:
__TFC5NowP_14iTunesWorker21fetchCurrentTrackInfofS0_FT_T_ in iTunesWorker.o
__TFC5NowP_14iTunesWorkercfMS0_FT_S0_ in iTunesWorker.o
_get_field_types_iTunesWorker in iTunesWorker.o
"_OBJC_CLASS_$_iTunesTrack", referenced from:
__TFC5NowP_14iTunesWorker21fetchCurrentTrackInfofS0_FT_T_ in iTunesWorker.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我使用 Xcode 6 beta 4。有什么想法吗?
【问题讨论】:
标签: objective-c macos swift itunes scripting-bridge