Como agendar uma notificação do sistema (HTML)
[ Este artigo destina-se aos desenvolvedores do Windows 8.x e do Windows Phone 8.x que escrevem aplicativos do Windows Runtime. Se você estiver desenvolvendo para o Windows 10, consulte documentação mais recente]
Observação Não está usando JavaScript? Veja Como agendar uma notificação do sistema (XAML).
Este tópico mostra como agendar uma notificação do sistema para aparecer em um momento específico.
O que você precisa saber
Tecnologias
- Windows Runtime
Pré-requisitos
- Um conhecimento prático dos termos e conceitos de notificações do sistema. Para saber mais, veja Visão geral das notificações do sistema.
- A capacidade de criar um aplicativo da Windows Store básico com JavaScript usando as APIs do Tempo de Execução do Windows. Para saber mais, veja Criar o seu primeiro aplicativo da Windows Store em JavaScript.
- A opção Compatível com o Sistema deve ser definida como "Sim" no manifesto do aplicativo para enviar ou receber notificações do sistema. Para saber mais, veja Como optar por notificações do sistema.
Instruções
Etapa 1: Especificar um modelo
Antes de poder especificar o tempo de entrega, você deve criar a notificação.
var template = Windows.UI.Notifications.ToastTemplateType.toastText02;
var toastXml = Windows.UI.Notifications.ToastNotificationManager.getTemplateContent(template);
Etapa 2: Especificar o conteúdo da notificação do sistema
Nós não abordaremos esse assunto aqui porque é igual para a notificação do sistema tanto agendada quanto não agendada. Para saber mais, veja Guia de início rápido: enviando uma notificação do sistema.
Etapa 3: Especifique a hora que a notificação do sistema deve ser entregue
Este exemplo especifica que a notificação deve aparecer em três segundos. Este exemplo usa o objeto Data do JavaScript para mostrar a hora atual.
var currentTime = new Date();
var startTime = new Date(currentTime.getTime() + 3 * 1000);
Etapa 4: Crie o objeto de notificação agendada do sistema
Envie o conteúdo da notificação do sistema e a hora de entrega agendada para o criador.
var scheduledToast = new Windows.UI.Notifications.ScheduledToastNotification(toastXml, startTime);
Etapa 5: Opcional: atribuir uma ID à notificação do sistema agendada
Essa identificação deve ter 16 caracteres ou menos. Ela pode ser usada mais tarde, se você quiser cancelar a notificação.
scheduledToast.id = "Future_Toast";
Etapa 6: Adicione sua de notificação do sistema ao agendamento.
Crie o objeto ToastNotifier que por sua vez será usado para adicionar sua notificação ao agendamento.
var toastNotifier = Windows.UI.Notifications.ToastNotificationManager.createToastNotifier();
toastNotifier.addToSchedule(scheduledToast);
Adicionando uma notificação do sistema que repete em um intervalo específico
O código a seguir exibe uma única notificação cinco vezes, cada uma com um minuto de diferença O código para preencher o modelo é omitido para maior clareza.
var template = Windows.UI.Notifications.ToastTemplateType.toastText02;
var toastXml = Windows.UI.Notifications.ToastNotificationManager.getTemplateContent(template);
// TO DO: Fill in the template with your notification content here.
var currentTime = new Date();
var startTime = new Date(currentTime.getTime() + 1000);
var recurringToast = new Windows.UI.Notifications.ScheduledToastNotification(toastXml, startTime, 60 * 1000, 5);
recurringToast.id = "Recurring_Toast";
var toastNotifier = Windows.UI.Notifications.ToastNotificationManager.createToastNotifier();
toastNotifier.addToSchedule(recurringToast);