Compartilhar via


Notificações de selo para aplicativos do Windows

Um selo de notificação transmite as informações de resumo ou estado específicas de seu aplicativo. Eles podem ser numéricos (1-99) ou um de um conjunto de glifos fornecidos pelo sistema. Exemplos de informações melhor transmitidas por meio de um selo incluem status de conexão de rede em um jogo online, status do usuário em um aplicativo de mensagens, número de e-mails não lidos em um aplicativo de e-mail e número de novas postagens em um aplicativo de mídia social.

Os selos de notificação aparecem no ícone da barra de tarefas do aplicativo e no canto inferior direito do bloco inicial, independentemente de o aplicativo estar em execução. Os selos podem ser exibidos em todos os tamanhos de bloco.

Observação

Você não pode fornecer sua própria imagem de selo; Somente imagens de crachá fornecidas pelo sistema podem ser usadas.

Emblemas numéricos

Valor Notificação XML
Um número de 1 a 99. Um valor de 0 é equivalente ao valor do glifo "none" e limpará o emblema. Um emblema numérico menor que 100. <badge value="1"/>
Qualquer número maior que 99. Um emblema numérico maior que 99. <badge value="100"/>

Emblemas de glifo

Em vez de um número, uma notificação pode exibir um de um conjunto não extensível de glifos de status.

Status Glifo XML
nenhum (Nenhum crachá mostrado.) <badge value="none"/>
activity <badge value="activity"/>
alarme <badge value="alarm"/>
alerta <badge value="alert"/>
atenção <badge value="attention"/>
disponível <badge value="available"/>
fora <badge value="away"/>
busy <badge value="busy"/>
error <badge value="error"/>
novaMensagem <badge value="newMessage"/>
Pausado <badge value="paused"/>
Jogar <badge value="playing"/>
indisponível <badge value="unavailable"/>

Criar um selo

Estes exemplos mostram como criar uma atualização de notificação.

Criar um selo numérico

private void setBadgeNumber(int num)
{

    // Get the blank badge XML payload for a badge number
    XmlDocument badgeXml = 
        BadgeUpdateManager.GetTemplateContent(BadgeTemplateType.BadgeNumber);

    // Set the value of the badge in the XML to our number
    XmlElement badgeElement = badgeXml.SelectSingleNode("/badge") as XmlElement;
    badgeElement.SetAttribute("value", num.ToString());

    // Create the badge notification
    BadgeNotification badge = new BadgeNotification(badgeXml);

    // Create the badge updater for the application
    BadgeUpdater badgeUpdater = 
        BadgeUpdateManager.CreateBadgeUpdaterForApplication();

    // And update the badge
    badgeUpdater.Update(badge);

}

Criar um selo de glifo

private void updateBadgeGlyph()
{
    string badgeGlyphValue = "alert";

    // Get the blank badge XML payload for a badge glyph
    XmlDocument badgeXml = 
        BadgeUpdateManager.GetTemplateContent(BadgeTemplateType.BadgeGlyph);

    // Set the value of the badge in the XML to our glyph value
    Windows.Data.Xml.Dom.XmlElement badgeElement = 
        badgeXml.SelectSingleNode("/badge") as Windows.Data.Xml.Dom.XmlElement;
    badgeElement.SetAttribute("value", badgeGlyphValue);

    // Create the badge notification
    BadgeNotification badge = new BadgeNotification(badgeXml);

    // Create the badge updater for the application
    BadgeUpdater badgeUpdater = 
        BadgeUpdateManager.CreateBadgeUpdaterForApplication();

    // And update the badge
    badgeUpdater.Update(badge);

}

Limpar um selo

private void clearBadge()
{
    BadgeUpdateManager.CreateBadgeUpdaterForApplication().Clear();
}

Obter o código de exemplo

  • Exemplo de notificações
    Mostra como criar blocos dinâmicos, enviar atualizações de selos e exibir notificações do sistema.