所以我嘗試了學習Swift以重新創建我的程序,沒有工作得很好,我也沒有走得很遠。嘗試通過調用函數從Obj-C++源代碼運行我的C++函數,並沒有奏效,並且在第一次關閉它後,項目拒絕再次打開。首先我沒有發現面向對象的編程非常直觀,所以我想避免Obj-C。如何從Cocoa應用程序運行Automator工作流/服務?
我已經有一個Automator獨立工作流和一個服務(做同樣的事情),它得到我需要的程序,顯示確認,在終端窗口中使用stdout運行程序,並在退出之前顯示通知。這是我按下特定按鈕時需要執行的所有操作。
那麼我該如何將這個按鈕鏈接到Swift中的Automator func run()
塊?我知道需要使用的命令,但正如我所說,我沒有發現面向對象的編程非常直觀,所以我需要知道使用該函數的上下文。在實踐中下面的塊是否足夠了,還是需要更多的規範?
@IBOutlet weak var testButton(NSButton!)
@IBAction testButton(_ sender: AnyObject)
{
let guard Bundle.main.path(forName: "test",forType:"workflow")
else
{
print("Could not find 'test.workflow'")
return
}
let URL="//location of file"
class func run(at: URL, withInput: nil)
}
我錯過了一些關於如何做到這一點或者是上述不夠?其次,有人請舉例說明文件位於捆綁的「資源」文件夾中的文件URL的格式? 也是class
仍然是單詞類,或者我應該指定一個自定義類?有人可以給我一個實際的這個塊/概念的真實世界的例子嗎?