Cabeçalhos do sistema

Você pode agrupar visualmente um conjunto de notificações relacionadas dentro da Central de Ações usando um cabeçalho de notificação do sistema em suas notificações.

Importante

Requer a Atualização para Criadores de Área de Trabalho e a 1.4.0 da biblioteca de notificações: você deve estar executando a compilação 15063 ou posterior para ver os cabeçalhos da notificação 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 da notificação do sistema. Os cabeçalhos são suportados apenas no desktop.

Como visto abaixo, esta conversa em grupo é unificada em um único cabeçalho, "Camping!!". Cada mensagem individual na conversa é uma notificação do sistema separada que compartilha o mesmo cabeçalho do sistema.

Brindes com cabeçalho

Você também pode optar por agrupar visualmente suas notificações por categoria, como lembretes de voo, rastreamento de pacotes 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

Os cabeçalhos são suportados apenas no desktop. Os 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?");

Em resumo...

  1. Adicionar o cabeçalho ao seu ToastContent
  2. Atribuir as propriedades Id, Title e Arguments necessárias
  3. Envie sua notificação (saiba mais)
  4. Em outra notificação, use a mesma ID de cabeçalho para unificá-los 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. O Título e os Argumentos da notificação mais recente em um grupo são usados. Se essa notificação for removida, o Título e os Argumentos retornarão para a próxima notificação mais recente.

Manipular a ativação 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 sobre seu aplicativo.

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

A ativação é tratada de forma idêntica à ativação normal da notificação do sistema, o que significa que você pode recuperar esses argumentos no método OnActivated da App.xaml.cs mesma forma que faz quando o usuário clica no corpo da notificação do sistema ou em um botão da notificação do 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;
    }
}

Informações adicionais

O cabeçalho separa e agrupa visualmente as notificações. Isso 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 entrar, primeiro a sair da lista de notificações.

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

O Id pode ser qualquer string que você escolher. Não há restrições de comprimento ou caractere em nenhuma das propriedades em ToastHeader. A única restrição é que todo o conteúdo da notificação do sistema 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 na 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 de notificação do sistema para limpar as notificações relevantes).