Vorrei svegliare un Mac a livello di programmazione. Ho iniziato utilizzando IOPMSchedulePowerEvent, tuttavia, quel metodo richiede l'accesso di amministratore e gli helper privilegiati. Ho implementato e funziona ma è troppo complicato.Come programmare la sveglia del sistema utilizzando le preferenze di sistema su un Mac?
Ho cercato un approccio migliore e ho scoperto che è possibile pianificare l'attivazione del sistema andando su Preferenze di Sistema -> Risparmio Energia -> Pianificazione. C'è un modo per pianificare in modo programmato un orario di attivazione usando questo metodo?
Grazie.
Modifica: capisco che il sistema richiede l'accesso di amministratore per pianificare l'attivazione del sistema e il tempo di sospensione. Va bene. Mi piacerebbe essere in grado di farlo a livello di programmazione. Se l'utente autorizza la funzionalità è ok, a condizione che venga richiesto una sola volta. Le richieste successive di impostare il tempo di attivazione del sistema non dovrebbero richiedere l'autorizzazione dell'utente.
@Nicholas, ho già implementato un helper con BAS, tuttavia BAS usa launchd per eseguire l'helper. In tal modo, launchd richiede che il daemon helper sia installato in/Library/LaunchDaemons. Questo è il modo approvato da Apple, ma per il Mac App Store, a Apple non piace perché rompe una delle loro regole sull'ubicazione del file dell'applicazione di file. – David
Sì, non è possibile farlo se si desidera inviare al Mac App Store. Questo è di progettazione e non c'è modo di aggirarlo.Segnala un bug ad Apple se questo è un problema per te e forse, un giorno, cambieranno le regole. (Altre applicazioni che usano l'autorizzazione hanno versioni separate per il Mac App Store che rimuovono la funzionalità di autorizzazione.) –
Beh, so che svegliare il sistema dal sonno è possibile perché ci sono applicazioni di allarme nel negozio che lo fa (es. Aurora). L'applicazione Aurora richiede un'autenticazione dell'amministratore e utilizza uno strumento di supporto per riattivare il sistema dalla modalità sospensione. Non capisco come possano ottenere un modo per non utilizzare launchd. – David