Compartilhar via


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).