Agendar um WakeUpPowerOn no iPhone
No aplicativo Relógio do iPhone possui a função de Alarme, a qual é bastante interessante, sendo possível adicionar vários alarmes e personalizá-los individualmente, desde o toque até uma etiqueta para identificação, como na foto:

Essa função funciona que é uma beleza, mas o problema é utilizá-lo como despertador e deixá-lo ligado a noite toda para despertar no outro dia conforme programado, vejo dois problema utilizando dessa forma:
1) Deixar o iPhone ligado a noite toda consome bateria.
2) Não gostaria de receber nenhuma chamada ou SMS durante a noite, muitas pessoas ativam o Modo Avião, parcialmente resolvido, mas o problema seria lembrar de ativar o Modo Avião todas as noites.
Celulares de outras marcas normalmene é possível programar um despertador desligar o aparelho por completo, que ele irá ligar na hora programada e em seguida toca o despertador. Isto não acontece com o iPhone, ele não consegue ligar o aparelho.
Atras de uma solução para isso, comecei a procurar no Mac OS X, em Preferencias do Sistema > Economizador de Energia > Programação, é possível programar data e hora para que a máquina ligue e inicialize o Mac OS X na hora programada, feito isso descobri que o arquivo é:
/Library/Preferences/SystemConfiguration/com.apple.AutoWake.plist
Legal, será que o iPhone OS tem esse arquivo também?
Estou utilizando iPhone 2G com Firmware 2.2.1 com jailbreak, acessando via SSH e procurando desse arquivo, bingo! Lá está ele:
/var/preferences/SystemConfiguration/com.apple.AutoWake.plist
Através de uma comparação, foi possível identificar quais eram as alterações necessárias para programar data e hora para ligar o iPhone automaticamente.
Bastou então copiar o /var/preferences/SystemConfiguration/com.apple.AutoWake.plist para o Mac OS X, editá-lo com o Property List Editor e adicionar as seguintes chaves e valores, como na imagem abaixo:

Após adicionar esses valores deve copiar novamente esse arquivo para o iPhone e fazer ele ler as novas configurações, para isso utilize:
cd /private/var/mobile/Library/Preferences/
launchctl
stop com.apple.SpringBoard
start com.apple.SpringBoard
Pronto agora, desligue o iPhone e aguarde ele ligar automaticamente.
Se alguém se interessar em desenvolver algum App baseado nas informações deste texto, favor entrar em contato para trocar algumas idéias.
Olá Felipe, achei muito interessante o procedimento mas estou com dificuldades e gostaria de saber se poderia me ajudar se possível.
Primeiramente, é possível fazer o pelo windows?
Tentei fazer o passo a passo seguindo informações através do diskaid, acessando o root, copiando o arquivo para a minha área de trabalho e alterando com o plist editor.
Meu Iphone possui O.S. 3.0, e utilizo o itunes 9.0.2.25
Não tenho experiência com o Plist então acredito estar aí o erro. Por favor dá uma olhada no arquivo e vê se eu fiz corretamente.
WARNING
Do not edit this file by hand. It must remain in sorted-by-date order.
wake
eventtype
wake
scheduledby
PersConn-aosnotifyd-com.apple.AOSNotification
time
2010-02-10T03:08:15Z
eventtype
wake
scheduledby
PersConn-apsd-com.apple.apsd-push.apple.com
time
2010-02-10T03:09:40Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.Clock
time
2010-02-10T10:02:45Z
eventtype
wake
scheduledby
com.apple.springboard.calendar
time
2010-02-10T19:12:15Z
eventtype
wakepoweron
scheduledby
repeating
time
2010-02-10T07:35:15Z
Fala Bernardo,
creio que não seja possível fazer a alteração do arquivo no Windows por causa do plist, a não ser que exista uma versão de plist editor para o Windows o que eu acho pouco provável.
Outra coisa, eu estava fuçando essa função nessa época, até estava empolgado em desenvolver um aplicativo em cima disso, porém tinha outras prioridades e não pude completar.
Resumindo não tenho como lhe ajudar, as dicas que consegui obter são essas.
Falows
Beleza Felipe. Agradeço a atenção. Abraço
I have a suggestion.
I have been experimenting with com.apple.AutoWake.plist to make the Clock APP power on my iPod Touch 2G running iOS 3.1.3. I have been successful at setting a eventtype” of “wakepoweron” that boots my iPod Touch. However, I want any alarm in Clock to automatically be a “wakepoweron,” not just a “wake” event.
A script that automatically runs at every shutdown is a possible solution. The script would have to examine the com.apple.AutoWake.plist file. It would have to locate any entry with a “scheduledby” of com.apple.Clock and change that entry’s “eventtype” from “wake” to “wakepoweron.” It would also need to move the time of the event forward by 3 minutes. Otherwise the iPod Touch / iPhone will not finish booting before the alarm is set to occur.
So, I know what needs to happen to the com.apple.AutoWake.plist file. What I do not know is how to develop such a script or APP. Do AppleScript scripts work under iOS? Is there a directory in iOS that is examined during shutdown and anything in it is launched?
good to know that someone has used these things … I understand exactly what you want, but now my iPhone is broken and I am no longer involved in the development. unaware of any process shutdown the iPhone, but one idea would be to create a script and scheduled it with crontab (crontab you know?) I believe that exists in the iPhone I can not confirm. At most, I can not help a great deal.
I have been in contact with the developer of iScheduler and the developer of PlayAwake. iScheduler will allow me to set a poweron event, but I have to set one for each Clock alarm. Two steps for one goal.
PlayAwake is a tweak for Clock and improves it a lot. If that developer will alter Clock events from wake to wakepoweron, everything will be perfect.
Either way, I have accomplished what I was after without having to develop my own script or APP.
Boa tarde, gostaria de desenvolver esse aplicativo, vc gostaria de desenvolver junto?
Olá Aline, infelizmente não tenho conhecimentos em desenvolvimento de app para o iOS, porém ficaria muito feliz em vez um app fazendo isso, ligando o iPhone e despertando conforme agendamento.
Se você desenvolver algo, não esqueça de me avisar