检查“服务”菜单中的服务是否可用

时间:2018-07-22 07:19:39

标签: xcode macos cocoa service

我正在尝试使用[code] NSPerformService [/ code]调用以编程方式从Cocoa应用程序中调用服务。但是我想在调用API之前知道该服务是否可用。有没有办法查询服务的状态?

1 个答案:

答案 0 :(得分:1)

您可以在应用程序的“服务”菜单中获取MenuItems的数组,以检查当前可用的服务。当然,此列表将根据您在应用程序中的选择而更改。假定服务菜单存在,下面的代码将向您展示如何到达那里。

    let mainMenu = NSApplication.shared.menu
    let serviceMenuItems = menu?.items.first?.submenu?.item(withTitle: "Services")?.submenu?.items
    print("ServiceMenu Items: \(serviceMenuItems)")

玩得开心。