我查看了NSWorkspace文档并得到了这个:
(NSRunningApplication *)currentApplication
但有什么方法可以找出该应用目前有多少(或者如果有的话)窗口?
我知道有一些AppleScript可以获得它,但沙箱不允许这样做?
答案 0 :(得分:2)
您需要查看CoreGraphics调用CGWindowListCopyWindowInfo
。
你这样称呼它
CFArrayRef windowList = CGWindowListCopyWindowInfo(kCGWindowListOptionOnScreenOnly | kCGWindowListExcludeDesktopElements, kCGNullWindowID);
然后迭代窗口信息数组并用它做你想做的事。
我不确定它是如何受沙盒影响的。