Cabeçalhos de notificação do sistema

Você pode agrupar visualmente um conjunto de notificações relacionadas na Central de ações por meio de um cabeçalho de notificação do sistema em suas notificações.

Importante

Requer Atualização de Criadores de Área de Trabalho e 1.4.0 da biblioteca de Notificações: você deve estar executando o build da área de trabalho 15063 ou posterior para ver cabeçalhos do sistema. Você deve usar a versão 1.4.0 ou posterior da biblioteca NuGet de Notificações do Kit de Ferramentas da Comunidade UWP para construir o cabeçalho no conteúdo do sistema. Há suporte para os cabeçalhos somente na área de trabalho.

Conforme visto abaixo, essa conversa de grupo é unificada em um único cabeçalho, "Acampamentos!!". Cada mensagem na conversa é uma notificação do sistema separada compartilhando o mesmo cabeçalho de notificação do sistema.

Notificação do sistema com cabeçalho

Você também pode optar por agrupar visualmente as notificações por categoria, como lembretes de voo, rastreamento de pacote e muito mais.

Adicionar um cabeçalho a uma notificação do sistema

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

Observação

Há suporte para os cabeçalhos somente na área de trabalho. Os dispositivos que não aceitam cabeçalhos simplesmente os ignoram.

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

Resumindo...

  1. Adicione Header ao ToastContent
  2. Atribua as propriedades Id, Title e Arguments necessárias
  3. Enviar a notificação (saiba mais)
  4. Em outra notificação, use a mesma Id do cabeçalho para unificá-las sob o cabeçalho. A Id é a única propriedade usada para determinar se as notificações devem ser agrupadas, ou seja, Title e Arguments podem ser diferentes. São usadas as propriedades Title e Arguments da notificação mais recente em um grupo. Se a notificação for removida, Title e Arguments utilizam a próxima notificação mais recente.

Manipular a ativação de um cabeçalho

Os cabeçalhos podem ser clicados pelos usuários para que, ao clicar, o usuário descubra mais sobre o aplicativo.

Portanto, os aplicativos podem oferecer Arguments no cabeçalho, de forma semelhante aos argumentos de inicialização na própria notificação.

A ativação é manipulada de modo idêntico à ativação de notificação do sistema normal, ou seja, você pode recuperar esses argumentos no método OnActivated de App.xaml.cs de forma semelhante a quando o usuário clica no corpo da sua notificação do sistema ou em um botão dela.

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

Informações adicionais

O cabeçalho separa e agrupa visualmente as notificações. Ele não altera qualquer outra logística sobre a quantidade máxima de notificações que um aplicativo pode ter (20) e o comportamento de primeiro a entrar, primeiro a sair da lista de notificações.

A ordem das notificações em cabeçalhos é: para um determinado aplicativo, a notificação mais recente dele (e o grupo de cabeçalho inteiro se for parte de um cabeçalho) será exibida primeiro.

O Id pode ser qualquer sequência que você escolher. Não há nenhuma restrição de tamanho ou caracteres em qualquer uma das propriedades em ToastHeader. A única restrição é que o conteúdo de notificação do sistema XML inteiro não pode ser maior que 5 KB.

A criação de cabeçalhos não altera o número de notificações mostradas na Central de ações antes que o botão "Veja mais" apareça (esse número é três 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 nome do aplicativo, não limpa todas as notificações desse cabeçalho (o aplicativo deve usar as APIs para apagar as notificações relevantes).