SBApplication错误

时间:2012-03-30 00:51:04

标签: xcode macos scripting-bridge

要在iTunes中使用ScriptingBridge,我使用了:

iTunesApplication *iTunes = [SBApplication applicationWithBundleIdentifier:@"com.apple.iTunes"];

但是,当我运行应用程序时,(我已经将错误的来源跟踪到上面一行),我得到一个构建失败,并且这些错误:

Apple Mach-O Linker (Id) Error
"_OBJC_CLASS_$_SBApplication", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture x86_64

Apple Mach-O Linker (Id) Error
Linker command failed with exit code 1 (use -v to see invocation)

如何解决此问题?我从Apple Developer Scripting Bridge编程指南中复制并粘贴了这一行,所以我无法想象它会导致问题。

2 个答案:

答案 0 :(得分:4)

这样的链接器错误表明您没有将ScriptingBridge.framework添加为链接到您产品的框架。

答案 1 :(得分:-1)

由于SpringBoard不是一个框架,并且在编译时无法链接到它,因此必须在运行时访问该类。我建议的方法是:

#import <objc/runtime.h>
SBApplication* iTunes = [objc_getClass("SBApplication") applicationWithBundleIdentifier:@"com.apple.iTunes"];