Как проснуться от сна программно если закрытая крышка?

Я хочу разбудить систему от сна программно, есть ли какой-либо способ сделать это?

Я считал следующую ссылку: http://developer.apple.com/mac/library/qa/qa2004/qa1340.html

этот единственный разговор о получении уведомления, но не уверенный является там каким-либо способом разбудить систему от сна?

Я ценю некоторый поток к информации...

Обновление:

Согласно предложению я попробовал IOPMSchedulePowerEvent

Код я использовал:

NSCalendarDate  *timeIntervalSinceNow = [NSCalendarDate dateWithTimeIntervalSinceNow:40];
IOReturn result = IOPMSchedulePowerEvent ((CFDateRef)timeIntervalSinceNow, NULL, CFSTR(kIOPMAutoWake)); 

Результат:

Это перестало работать в MacBook если закрытая крышка

Я делаю некоторую вещь неправильно или Какое-либо решение?

12
задан rogerdpack 15 December 2017 в 18:19
поделиться

1 ответ

Вы можете запланировать события пробуждения с помощью IOPMSchedulePowerEvent через диспетчер питания. Вы можете запланировать немедленное пробуждение. pmset - это оболочка командной строки для диспетчера питания. В некоторых случаях вы также можете предотвратить сон с помощью IOCancelPowerChange.

Вы можете предотвратить сон или пробуждение, создав событие мыши или нажатия клавиши. Один из способов создания событий - CGPostKeyboardEvent.

Редактировать:

Нормальный сон отличается от сна в закрытом режиме. Чтобы повлиять на последнее, вы должны написать расширение ядра, например Insomnia .

6
ответ дан 2 December 2019 в 23:19
поделиться