Como usar a fila de notificação com notificações locais (aplicativos da Windows Store que usam C#/VB/C++ e XAML)

Este tópico mostra como habilitar a fila de notificações em seu bloco. Ele também mostra como marcar sua notificação antes de enviá-la, para evitar conteúdo duplicado ou desatualizado na fila. Com a fila de notificações habilitada, o Windows percorre até cinco notificações.

Para ver versões em JavaScript dos exemplos apresentados neste Guia rápido, consulte Como usar a fila de notificações com as notificações locais (JavaScript).

Observação  Neste Guia de início rápido, você vai manipular o conteúdo de notificações diretamente pelo DOM (Document Object Model) XML. Uma abordagem opcional está disponível por meio da biblioteca NotificationsExtensions, que apresenta o conteúdo XML como propriedades de objetos, incluindo o Intellisense. Para saber mais, veja Guia de início rápido: usando a biblioteca NotificationsExtensions em seu código. Para ver o código neste Guia de início rápido expresso com o uso de NotificationsExtensions, leia o Exemplo de blocos e notificações de aplicativo.

O que você precisa saber

Tecnologias

  • Windows Runtime

Pré-requisitos

Para compreender este tópico, você precisará do seguinte:

Instruções

Etapa 1: Adicionar declarações de namespace

Windows.UI.Notifications inclui as APIs de gravação.



using Windows.UI.Notifications;
using Windows.Data.Xml.Dom;

Etapa 2: Definir a opção para habilitar ciclos de notificação

Este código permite a fila de notificações para seu aplicativo. Essa chamada só precisa ser feita uma vez, enquanto o aplicativo está em execução, embora não haja problema em chamá-lo novamente. Recomendamos que você faça essa chamada no código de inicialização de seu aplicativo. Isso garante que a chamada seja feita antes de você atualizar o bloco localmente, solicitar um canal de notificação por push ou iniciar atualizações periódicas para o bloco.



TileUpdateManager.CreateTileUpdaterForApplication().EnableNotificationQueue(true);

Etapa 3: Criar uma notificação de bloco

Esta é a primeira etapa em todas as notificações de bloco e não é diferente de qualquer outra situação, está incluída apenas como complemento. Para saber mais, veja Quickstart: enviando uma atualização do bloco.

Observação  Quando o GetTemplateContent é chamado em um sistema Windows 8, ele retorna uma versão do modelo 1. Quando esse método é chamado em um sistema Windows 8.1, ele retorna uma versão do modelo 2. No entanto, se um aplicativo especifica a compatibilidade do Windows 8 em seu manifesto, esse método retorna uma versão do modelo 1 independentemente da versão do Windows. Neste tópico, nós vamos usar a versão do modelo 2.



TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150ImageAndText01);
XmlDocument tileXml = TileUpdateManager.GetTemplateContent(tileTemplate);

// Fill in the template with your tile content.
// Define a medium tile and add it to tileXML.

TileNotification tileNotification = new TileNotification(tileXml);

Etapa 4: Dar uma marca a sua notificação

Marca é uma cadeia de no máximo 16 caracteres, além de um caractere nulo de terminação, que identifica exclusivamente a notificação em seu aplicativo.

Quando o enfileiramento estiver habilitado, um máximo de cinco notificações poderão ser alternadas automaticamente no bloco. Por padrão, a política de substituição de notificações na fila primeiro a entrar, primeiro a sair (FIFO); quando a fila estiver cheia e uma nova notificação chegar, a notificação mais antiga será removida. Observe que a ordem de exibição das notificações não segue um padrão linear rígido. Os usuários podem ver as notificações em uma ordem diferente da ordem em que elas chegam.

Para substituir o comportamento de fila FIFO, uma notificação deverá receber uma marca. Se uma nova notificação chegar com a mesma marca de uma notificação existente, a nova notificação substituirá a antiga, independentemente do local da notificação antiga na fila. Por exemplo, se o seu bloco mostrar preços de ação, você vai querer mostrar as informações mais atualizadas. O uso de marcas para substituir notificações na fila é opcional.

Para saber mais sobre como usar marcas com a fila de notificações, consulte Usando a fila de notificações. O exemplo abaixo mostra como definir a marca para notificações locais. Para obter informações sobre a configuração de marcas para atualizações periódicas, consulte Tileupdater.StartPeriodicUpdateBatch. Para obter informações sobre a configuração de marcas para notificações por push, consulte Cabeçalhos de solicitação e resposta de serviço de notificação por push.


tileNotification.Tag = "stockMSFT";

Etapa 5: Enviar a notificação ao bloco



TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification);

Tópicos relacionados

Quickstart: enviando uma atualização em bloco
Exemplo de blocos de aplicativo e destaques
Tamanhos de imagens de bloco e notificação do sistema
Visão geral de blocos e notificações de bloco
Diretrizes e lista de verificação de blocos

 

 

Mostrar:
© 2014 Microsoft. Todos os direitos reservados.