Ferramentas de alarme
Um alarme online funciona se o computador entrar em suspensão?
Um guia sobre a confiabilidade dos alarmes no navegador em cada estado, as limitações em segundo plano, as notificações, o som e as opções mais seguras de alerta de reserva.
Por Vigneshwaran Vijayakumar, desenvolvedor e editor | | Revisado conforme a política editorial do ClockTools
Índice
Um alarme online não é uma forma confiável de despertar um computador em suspensão ou desligado. Se a aba do alarme for fechada, seu código deixa de existir. Se o dispositivo entrar em suspensão, o sistema operacional pode suspender o navegador antes que a página verifique o horário ou reproduza o som. Uma aba em segundo plano ainda pode tocar enquanto o dispositivo permanece ativo, mas as limitações impostas aos temporizadores pelo navegador exigem um teste, em vez de presumir que o alarme funcionará.
Use o despertador online do ClockTools para lembretes enquanto trabalha à mesa, quando puder manter o dispositivo ativo e a página aberta. Para um voo, um medicamento, uma prova ou para acordar de manhã, use um alarme nativo do celular ou do sistema operacional e configure um segundo alerta independente.
O que continua funcionando em cada estado do navegador?
A distinção importante não é apenas estar “online ou offline”. É saber se a página ainda existe e se o sistema operacional está concedendo tempo para que ela execute seu código.
| Estado do dispositivo e da página | A página consegue verificar o relógio? | O som ou a vibração podem funcionar? | Conclusão prática |
|---|---|---|---|
| Aba ativa, dispositivo ativo | Normalmente, sim | Normalmente, sim, após uma interação do usuário | Adequado para um lembrete comum |
| Aba em segundo plano, dispositivo ativo | Geralmente, mas a execução dos temporizadores pode ser limitada | É possível, dependendo das políticas do navegador e de áudio | Teste e mantenha um alerta de reserva para eventos importantes |
| Aba ou navegador fechado | Não | Não | O alarme online não pode funcionar |
| Dispositivo em repouso ou suspenso | Não de forma confiável | Não de forma confiável | Use um alarme nativo |
| Dispositivo desligado ou reiniciado | Não | Não | Use um alarme nativo com agendamento persistente |
Esta tabela é deliberadamente conservadora. O comportamento da tela de bloqueio varia entre celulares, notebooks, navegadores e modos de bateria. Se o dispositivo continuar ativo com a tela bloqueada, a página pode continuar funcionando; se o sistema operacional a suspender, ela não poderá garantir um alerta. Teste exatamente o estado que pretende usar.
Como o ClockTools determina que chegou a hora de um alarme?
A implementação atual do ClockTools lê o horário local do dispositivo uma vez por segundo. Ela formata a hora e o minuto atuais, compara esse valor com cada alarme ativado e usa uma chave de disparo que combina data e minuto para evitar que o mesmo alarme dispare várias vezes naquele minuto. Trata-se de uma verificação do horário do relógio, não de um serviço remoto para despertar o dispositivo.
Quando chega a hora do alarme, a página pode exibir uma notificação do navegador se a permissão já tiver sido concedida, reproduzir o som selecionado no volume escolhido e solicitar vibração quando houver suporte no navegador. O toque se repete até você interrompê-lo ou ativar a soneca. A soneca adia esse alarme para outro horário dentro da página aberta.
Essas observações explicam tanto a utilidade quanto os limites da ferramenta. Ela pode se recuperar de um pequeno atraso de execução enquanto a página está ativa, pois verifica o minuto atual. Não pode funcionar depois que a página for fechada nem obrigar um sistema operacional em suspensão a retomar a execução do navegador.
Se quiser definir uma duração em vez de um horário, use o temporizador online. Um temporizador dispensa a escolha de uma hora e um minuto, mas está sujeito às mesmas limitações básicas do estado do navegador.
Por que um alarme em segundo plano pode atrasar?
Os navegadores reduzem o trabalho em segundo plano para economizar energia. O guia da MDN sobre visibilidade da página documenta que abas inativas podem ter limites de tempo de execução e restrições nos temporizadores. A referência da MDN sobre setTimeout também explica que uma ação agendada por um temporizador pode ser executada depois do momento solicitado quando a aba está inativa ou a thread principal está ocupada.
Isso não significa que toda aba oculta perderá todos os alarmes. Significa que manter “a aba aberta” é necessário, mas não suficiente para garantir pontualidade estrita. Economia de bateria, descarregamento de abas em celulares, fechamento da tampa do notebook, gerenciamento de memória do navegador, saída de áudio e permissões de notificação podem mudar o resultado.
O som depende de outra condição. Os navegadores costumam exigir uma ação do usuário antes de permitir a reprodução de áudio. Testar o toque selecionado é uma forma útil de realizar essa interação e identificar uma aba silenciada, um alto-falante desconectado, volume baixo no sistema ou uma saída de áudio incorreta. O guia da MDN sobre reprodução automática explica por que o áudio automático pode ser bloqueado mesmo quando o código da página está em execução.
As notificações são um canal adicional, não uma garantia de que o dispositivo será despertado. A permissão precisa ser concedida, e o suporte do navegador varia conforme a plataforma. O guia da MDN sobre a API de notificações observa que a permissão deve ser solicitada a partir de uma ação do usuário e que o tratamento das notificações em celulares difere daquele em computadores.
O que testar antes de confiar em um alarme no navegador?
Faça esta verificação pelo menos dois minutos antes do evento real:
- Abra o ClockTools, configure um alarme com um nome para daqui a dois minutos, escolha o som desejado e teste o toque.
- Confirme que a aba não está silenciada, que o volume do sistema é audível e que os fones ou alto-falantes corretos estão selecionados.
- Ative as notificações apenas se quiser um segundo canal visual; não trate a permissão como prova de que o som será reproduzido.
- Coloque a página no mesmo estado que pretende usar: aba em segundo plano, janela minimizada ou dispositivo bloqueado, mas mantido ativo intencionalmente.
- Verifique se o alerta chega e depois configure o alarme real e um alarme nativo de reserva independente, caso perder o aviso tenha consequências importantes.
Se o teste falhar, mude uma condição por vez. Primeiro, mantenha a aba ativa. Depois, desative a economia de bateria. Em seguida, teste novamente a saída de áudio e a permissão de notificação. Isso transforma um relato vago de “o alarme não funcionou” em um problema específico da página, da energia ou da saída de áudio.
Um link compartilhado pode reproduzir as configurações de horário, nome, som, soneca e volume, mas quem o recebe ainda precisa abri-lo e manter a página em condições de executar seu código. Compartilhar a configuração não transfere um alarme nativo agendado para outro dispositivo.
Qual alarme usar para um evento crítico?
Use um alarme no navegador quando o dispositivo já fizer parte da tarefa: um lembrete de reunião enquanto trabalha à mesa, um aviso de transição entre atividades em sala de aula exibido em uma tela ou um sinal durante uma sessão supervisionada. Mantenha-o suficientemente visível para perceber um erro antes do horário previsto.
Use um alarme nativo quando o dispositivo puder entrar em suspensão, reiniciar, perder a aba do navegador ou passar muito tempo bloqueado. Os alarmes nativos do sistema operacional têm privilégios de agendamento que uma página comum não possui. Para um prazo que envolva segurança ou consequências irreversíveis, use dois dispositivos ou canais independentes e verifique ambos com antecedência.
A escolha depende das consequências de uma falha, não da quantidade de recursos. O ClockTools oferece nomes para alarmes, sons, volume, soneca, notificações, vibração e configurações compartilháveis. Nenhum desses controles transforma uma página aberta em um serviço de alarme do sistema. Trate a página como uma ferramenta prática para uma sessão ativa e escolha um sistema de agendamento mais robusto sempre que o estado do dispositivo estiver fora do seu controle.
Perguntas frequentes
Um alarme online toca se eu fechar a aba?
Não. Fechar a aba remove a página e a lógica do alarme. Mantenha a aba do alarme do ClockTools aberta ou use um alarme nativo quando o alerta precisar funcionar mesmo com o navegador fechado.
Uma aba em segundo plano ainda pode tocar um alarme?
Pode, enquanto o navegador e o dispositivo permanecerem ativos, mas os navegadores podem limitar os temporizadores em segundo plano e atrasar sua execução. Teste exatamente o navegador e as configurações de energia que pretende usar antes de confiar no alarme.
As notificações do navegador fazem um alarme online funcionar com o dispositivo em suspensão?
Não. A permissão de notificação pode acrescentar um alerta enquanto a página está em execução, mas não garante que um computador em suspensão ou desligado desperte e execute a página.
O ClockTools salva os alarmes após uma reinicialização?
Não presuma que o alarme no navegador continuará funcionando após uma reinicialização. Reabra a página, confirme que o alarme está ativado, teste o som e configure um alarme nativo de reserva para eventos importantes.
Por que meu alarme apareceu atrasado quando voltei à aba?
O navegador ou o sistema operacional pode ter limitado ou suspendido a execução da página. Uma função agendada que está atrasada só pode ser executada quando a página voltar a receber tempo de execução.
Que alarme devo usar para um voo, um medicamento ou para acordar?
Use um alarme nativo do celular ou do sistema operacional, com um alerta de reserva testado. Um alarme no navegador é mais adequado para lembretes de menor importância enquanto o dispositivo está ativo e a página permanece aberta.

