1

我试图让我的 OS X 应用程序检测某个程序是否正在运行,但 NSRunningApplications 对我不起作用。这是我的代码:

import AppKit
class func sharedWorkspace() -> NSWorkspace
{
    var runningApplications: [NSRunningApplications] {get}
}

我得到的错误是

预期 '{' 开始 getter 定义。

预期返回“NSWorkspace”的函数中缺少返回。

有任何想法吗?

4

1 回答 1

1

你必须使用NSWorkspace.sharedWorkspace().runningApplications它自己:

for app in NSWorkspace.sharedWorkspace().runningApplications {
    if let name = app.localizedName {
        print(name)
    }
}

您可以使用简单的数组获取正在运行的应用程序名称map(或flatMap在此处管理 Optionals):

let names = NSWorkspace.sharedWorkspace().runningApplications.flatMap { $0.localizedName }

print(names)
于 2016-01-17T19:54:32.717 回答