我试图让我的mac应用程序在Safari启动时执行某些操作。检测Safari启动的明显方法是轮询正在运行的进程。有更好的方法吗?
我在想可能会有一些API用于注册回调,或者可能有一个我可以观察到的通知中心事件。
答案 0 :(得分:3)
您可以将自己添加到NSWorkspace
的通知中心,作为NSWorkspaceDidLaunchApplicationNotification
的观察者。当您收到通知时,请检查它提供的NSRunningApplication
实例(通知的userInfo中的对象为NSWorkspaceApplicationKey
},以确定它是否是已启动的Safari。
答案 1 :(得分:1)