Compartilhar via


Toast headers

Você pode agrupar visualmente um conjunto de notificações relacionadas dentro da Central de Ações usando um cabeçalho nas suas notificações.

Important

requer a Atualização para Criadores do Windows e a biblioteca de notificações 1.4.0: você deve estar executando a compilação da Área de Trabalho 15063 ou posterior para visualizar cabeçalhos de notificações. Você deve usar a versão 1.4.0 ou posterior do biblioteca NuGet de Notificações do Kit de Ferramentas da Comunidade UWP para construir o cabeçalho no conteúdo do seu sistema. Os cabeçalhos só têm suporte na Área de Trabalho.

Como visto abaixo, essa conversa em grupo é unificada em um único cabeçalho, "Camping!!". Cada mensagem individual na conversa é uma notificação toast separada, compartilhando o mesmo cabeçalho toast.

Toasts com de cabeçalho

Você também pode optar por agrupar visualmente suas notificações por categoria, como lembretes de voos, acompanhamento de pacotes, entre outros.

Adicionar um cabeçalho a uma notificação

Veja como adicionar um cabeçalho a uma notificação toast.

Note

Os cabeçalhos só têm suporte na Área de Trabalho. Dispositivos que não dão suporte a cabeçalhos simplesmente ignorarão o cabeçalho.

new ToastContentBuilder()
    .AddHeader("6289", "Camping!!", "action=openConversation&id=6289")
    .AddText("Anyone have a sleeping bag I can borrow?");

In summary...

  1. Adicione o cabeçalho ao ToastContent
  2. Atribuir as propriedades Id, Title, e Arguments
  3. Envie sua notificação (saber mais)
  4. Em outra notificação, use o mesmo cabeçalho Id para unificar as notificações sob o cabeçalho. O Id é a única propriedade usada para determinar se as notificações devem ser agrupadas, o que significa que o Título e os Argumentos podem ser diferentes. Os campos Título e Argumentos da notificação mais recente dentro de um grupo são usados. Se essa notificação for removida, então o Título e Argumentos voltarão para a notificação mais recente disponível.

Acionar a ativação a partir de um cabeçalho

Os cabeçalhos são clicáveis pelos usuários, para que o usuário possa clicar no cabeçalho para saber mais do seu aplicativo.

Portanto, os aplicativos podem fornecer argumentos no cabeçalho, semelhantes aos argumentos de inicialização no próprio sistema.

A ativação é tratada de forma idêntica a de ativação normal do sistema, o que significa que você pode recuperar esses argumentos no método OnActivated de App.xaml.cs assim como você faz quando o usuário clica no corpo do seu sistema ou em um botão no seu sistema.

protected override void OnActivated(IActivatedEventArgs e)
{
    // Handle toast activation
    if (e is ToastNotificationActivatedEventArgs)
    {
        // Arguments specified from the header
        string arguments = (e as ToastNotificationActivatedEventArgs).Argument;
    }
}

Additional info

O cabeçalho separa visualmente e agrupa notificações. Ele não altera nenhuma outra logística sobre o número máximo de notificações que um aplicativo pode ter (20) e o comportamento primeiro a sair da lista de notificações.

A ordem das notificações dentro dos cabeçalhos é a seguinte... Para um determinado aplicativo, a notificação mais recente do aplicativo (e todo o grupo de cabeçalho, se parte de um cabeçalho) será exibida primeiro.

O ID pode ser qualquer cadeia de caracteres que você escolher. Não há restrições de comprimento ou caractere em nenhuma das propriedades no do ToastHeader. A única restrição é que todo o conteúdo de toast em XML não pode ser maior que 5 KB.

A criação de cabeçalhos não altera o número de notificações mostradas dentro da Central de Ações antes que o botão "Ver mais" apareça (esse número é 3 por padrão e pode ser configurado pelo usuário para cada aplicativo nas Configurações do sistema para notificações).

Clicar no cabeçalho, assim como clicar no título do aplicativo, não limpa nenhuma notificação pertencente a esse cabeçalho (seu aplicativo deve usar as APIs do sistema para limpar as notificações relevantes).