以编程方式最小化所有 windows 或 Cocoa 应用程序?

Programmatically minimize all windows or besides my Cocoa application?

我在 Swift 中找不到任何相关信息。有没有办法以编程方式使我的应用程序最小化后台打开的所有其他 windows,或者甚至只是最小化 Safari?我基本上希望我的应用程序在桌面上 运行,后台没有任何混乱。有没有办法以编程方式为 Cocoa 应用执行此操作?我是 swift 的新手,如有任何帮助,我们将不胜感激。

您可以在 NSWorkspace 上使用 api,这样您就可以在后台隐藏所有可见的应用程序。 您可以在此处找到有关 NSWorkspace 的更多信息:link

隐藏除发件人以外的所有应用程序。此方法必须从您应用的主线程调用。

NSWorkspace.shared().hideOtherApplications()

如果您只想隐藏 Safari,

  let appPath = NSWorkspace.shared().fullPath(forApplication: "Safari")
  let identifier = Bundle.init(path: appPath!)?.bundleIdentifier

  if let bundleID = identifier {
  let runningApps = NSRunningApplication.runningApplications(withBundleIdentifier:bundleID )
        if !runningApps.isEmpty {
            runningApps.first?.hide()
        }
    }