2016-12-16 59 views

回答

0

不要打扰NSAppleScript:这是一个正确的PITA用于进出传递数据,你不得不打包自己解压每个NSAppleEventDescriptor。在Cocoa应用程序中调用AS的最简单方法是通过AppleScript-ObjC bridge - 它可以让ObjC代码像本机方法一样调用AS处理程序(反之亦然),并为您执行AS-ObjC值转换。

直接从ObjC /雨燕送苹果公司发生的其他选项:

  • 的MacOS的ScriptingBridge框架,它是残缺的,糟糕和可怕的混淆,但可能就足够了琐碎的任务(通过ASOC仍然是最安全的,并尽管最健壮的选择)

  • SwiftAutomation framework我正在开发的目标是在新的一年中将其投向苹果。这是一个新的代码库,我仍然在剔除bug,但是设计从appscript下载,这已经证明了它是真实世界中十几年使用AppleScript的真正替代品。

顺便说一句,如果SwiftAutomation是您感兴趣,请在bugreport.apple.com文件功能请求,要求苹果公司采用它,包括在10.13。他们获得的重复票越多,他们就越有可能注意。

相关问题