获取按Cmd + Tab顺序/ Z顺序运行的macOS应用程序列表

时间:2019-03-31 02:14:59

标签: objective-c macos

在macOS上的Objective-C中,方法[[NSWorkspace sharedWorkspace] runningApplications]可用于获取系统上正在运行的应用程序的列表。

但是,对于Apple's documentation,返回数组中应用程序的顺序是不确定的。

我想按用户按Cmd + Tab时出现的顺序获得正在运行的应用程序的列表;也就是说,按照每个应用程序最近成为最前面的应用程序的时间的“ Z顺序”。

这怎么办?

1 个答案:

答案 0 :(得分:2)

我认为您能做的最好的就是随着时间的流逝观察键值NSWorkspace.sharedWorkspace的{​​{1}}属性,并自己维护列表的顺序。当然,这仅适用于自您的应用启动以来已成为最前端的应用。其他应用将继续无序。