SBApplication ошибка - PullRequest
       19

SBApplication ошибка

1 голос
/ 30 марта 2012

Чтобы использовать ScriptingBridge с iTunes, я использовал:

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 ]

4 голосов
/ 04 декабря 2014

Ошибка компоновщика предполагает, что вы просто не добавили ScriptingBridge.framework в качестве фреймворка, связанного с вашим продуктом.

0 голосов
/ 30 марта 2012

Поскольку SpringBoard не является фреймворком, и вы не можете ссылаться на него при компиляции, вы должны получить доступ к классу во время выполнения. Метод, который я бы порекомендовал, таков:

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