cod*_*ger 4 macos cocoa objective-c
我试着注册了NSWorkspaceDidWakeNotification与[NSNotificationCenter defaultCenter],但是当我的MacBook Pro从睡眠状态唤醒它永远不会触发.我注册了火灾的其他通知,所以这不是我如何注册它的问题.
基本上我需要在用户的机器从睡眠中唤醒,并且用户已经重新登录,或者机器已经唤醒并且用户回到他们的帐户中时,如果没有向他们显示登录屏幕,则需要得到通知.如果我必须处理多个通知,那也没关系.
有什么想法吗?
谢谢!
科迪
通知NSWorkspaceDidWakeNotification不是来自默认通知中心.这有效:
[[[NSWorkspace sharedWorkspace] notificationCenter] addObserver:self
selector:@selector(wakeFromSleep:)
name:NSWorkspaceDidWakeNotification
object:nil];
Run Code Online (Sandbox Code Playgroud)
关于这个问题,存在Apple Q&A 1340.
这仅涵盖您问题的清醒方面.您最初登录时没有收到通知,因为您的应用程序尚未运行.但是你可能意味着睡眠后解密的密码提示,你就可以了.