2 Stimmen

Benachrichtigung, wenn der Laptop-Deckel geschlossen ist

Gibt es Benachrichtigungen, wenn der Computer aufgrund des geschlossenen Deckels in den Ruhezustand versetzt wird? Ich kenne die Ruhe-Benachrichtigungen von NSWorkspace, aber diese werden unabhängig davon gepostet, wie der Computer in den Ruhezustand versetzt wird (auch beim Ruhezustand bei Leerlauf).

1voto

William Gustafson Punkte 486

Ja, Sie können den Zustandswechsel durch Beobachten eines kIOPMMessageClamshellStateChange Callbacks bearbeiten. Sehen Sie sich die Dateien ControlPlane's LaptopLidEvidenceSource für ein weitgehend vollständiges Objective-C-Codebeispiel an.

https://github.com/dustinrue/ControlPlane/blob/master/Source/LaptopLidEvidenceSource.h https://github.com/dustinrue/ControlPlane/blob/master/Source/LaptopLidEvidenceSource.m

0voto

kent Punkte 5725

Befindest du dich im Kernel oder im Benutzerbereich?
Im Kernel-Bereich kann sich dein Kext für Power-Management-Ereignisse wie folgt registrieren:

PMinit();
provider->joinPMtree(this);
registerPowerDriver (this, gPowerStates, kPowerNumStates);

Dann kann dein KEXT auf setPowerState() und powerStateDidChangeTo() reagieren.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X