机器由于盖子关闭而进入睡眠状态时是否有任何通知?我知道NSWorkspace
的睡眠通知,但无论机器如何进入睡眠状态(即使在空闲睡眠状态下),这些通知都会发布。
问问题
869 次
2 回答
0
你在内核还是用户区?
在内核空间中,您的 Kext 可以像这样注册 PowerManagement 事件:
PMinit();
provider->joinPMtree(this);
registerPowerDriver (this, gPowerStates, kPowerNumStates);
然后你的 KEXT 可以响应 setPowerState() 和 powerStateDidChangeTo()
于 2012-03-05T14:59:33.350 回答
0
是的,您可以通过观察kIOPMMessageClamshellStateChange
回调来处理状态变化。有关大部分完整的 Objective-C 代码示例,请参阅 ControlPlane 的 LaptopLidEvidenceSource 文件。
https://github.com/dustinrue/ControlPlane/blob/master/Source/LaptopLidEvidenceSource.h https://github.com/dustinrue/ControlPlane/blob/master/Source/LaptopLidEvidenceSource.m
于 2019-11-15T17:20:09.587 回答