mac开发系列10:监听应用的全局事件

有时,我们需要知道一个应用是否处于活跃状态,即用户在某个时间段内是否有使用这个应用,并据此做出相应的处理。例如,可以根据鼠标、键盘或者滚轮等事件,判断用户是否在使用mac微信。代码如下:

    [NSEvent addLocalMonitorForEventsMatchingMask:(NSLeftMouseDownMask|NSRightMouseDownMask|NSCursorUpdateMask|NSScrollWheelMask|NSKeyDownMask|NSMouseMovedMask)
                handler:^NSEvent *_Nullable(NSEvent *_Nonnull theEvent) {
                            // Do something when global event happen
        }];

如果一段时间内,用户都没有使用,我们就认为mac微信处于不活跃状态,然后释放掉一些资源,比如网络连接等.

你可能感兴趣的:(mac开发系列10:监听应用的全局事件)