如何在mac应用程序中检测app是否处于非活动状态

时间:2014-01-22 17:35:09

标签: objective-c macos cocoa

我需要在应用中显示提醒,如果应用处于非活动状态,我需要使用NSUserNotification发送提醒,否则我将使用简单的sheetModal提醒对话框。如何知道应用程序是处于活动状态还是非活动状态?即用户是否正在积极使用该应用程序或使用其他应用程序?

我需要复制与Xcode相同的警报系统,如果Xcode处于活动状态,它会在Xcode窗口显示一条消息,否则它会发布一个UserNotification。

2 个答案:

答案 0 :(得分:2)

applicationWillResignActive:

怎么样?
  

在默认通知中心发送之前   应用程序已停用。

查看Apple the NSApplicationDelegate protocol上的文档。

答案 1 :(得分:1)

您应该阅读NSApplicaion上的文档。

在其中你会看到

<强> isActive

Returns a Boolean value indicating whether this is the active application.

- (BOOL)isActive
Return Value
YES if this is the active application; NO otherwise.