2010-05-27 7 views
1

"IOPMSchedulePowerEvent"기능을 사용하여 절전 또는 웨이크 이벤트를 예약하고 "IORegisterForSystemPower"로 내 데몬을 등록하여 전원 상태 변경을 수신합니다. 모든 것이 잘 작동합니다!Mac OS X에서 사용자 활동 감지

시스템이 절전 모드로 전환되고 나중에 예약 된 시간에 잠에서 깨우면 내 데몬이 약간의 작업을 수행 한 후 시스템이 다시 잠자기 상태가됩니다. 이제

내 질문 :

  1. 시스템이 사용자 또는 예약 된 시간에 의해 깨어나 경우 어떻게 감지 할 수 있습니까?

  2. 사용자가 현재 시스템에서 작업 중이면 데몬이 절전 모드로 전환하지 않도록하려면 어떻게합니까? 부팅시 이후 키보드를 누르거나 마우스 움직임의 수를 조회 할 수 있습니다 CGEventSourceCounterForEventType 사용 :

감사 Nobik

답변

3

사용자 상호 작용의 다양한 형태를 감지 할 수있는 쉬운 방법이있다. 정기적 인 간격으로이를 수행하고 카운트를 비교함으로써 상호 작용을 감지 할 수 있습니다.

+0

이것은 좋은 생각입니다. 감사합니다.하지만이 작업을 쉽게 수행 할 수있는 방법을 찾고 있습니다. Windows에서 정보를 얻으려면 "IsSystemResumeAutomatic-Function"을 사용하십시오. Mac에 필적할만한 기능이 있습니까? – Nobik