Idioma: HTML | XAML

Como manipular a ativação a partir de uma notificação do sistema (XAML)

Observação  Não está usando C#/VB/C++? Veja Como manipular ativação de uma notificação do sistema (HTML).

Este tópico demonstra as ações que você deve executar como resposta quando o usuário clica em uma notificação do sistema enviada de seu aplicativo. O aplicativo deve responder exibindo a interface do usuário específica à notificação do sistema. O aplicativo normalmente é iniciado em um contexto ou modo de exibição relacionado ao conteúdo da notificação do sistema. Para isso, inclua uma cadeia de caracteres de ativação na carga da notificação do sistema, que é então passada ao aplicativo como um argumento no evento de ativação. O fluxo de dados básico é mostrado aqui:

  1. O aplicativo ou serviço da Web cria e envia a carga de notificação, incluindo a cadeia de caracteres de inicialização
  2. A notificação do sistema é criada e/ou enviada à central de ações
  3. O usuário seleciona uma notificação do sistema (clique ou toque)
  4. O evento ativado dispara
  5. O manipulador do evento ativado do aplicativo lê a cadeia de caracteres de inicialização
  6. O aplicativo é ativado usando os parâmetros fornecidos na cadeia de caracteres de inicialização
Observação  Quando testar a funcionalidade do código de notificação do sistema por meio do Microsoft Visual Studio, você deve usar a configuração de depuração da Máquina Local ou Máquina Remota em uma máquina Windows x86, x64 ou Tempo de Execução do Windows. Não é possível usar a opção da função de depuração do Visual Studio Simulator—seu código compilará e executará no Simulador, mas a notificação do sistema não aparecerá.

O que você precisa saber

Tecnologias

  • Windows Runtime

Pré-requisitos

Para compreender este tópico, você precisa de:

Instruções

Etapa 1: Incluir dados de ativação na carga da notificação do sistema

Quando seu aplicativo é ativado por uma notificação do sistema, ele tem que receber informações relacionadas ao conteúdo da notificação do sistema. A partir disso, ele reflete o conteúdo iniciando-o em um modo de exibição associado em vez do padrão. Quando o aplicativo ou serviço Web cria a notificação do sistema, ele usa o atributo launch para especificar as informações de ativação. Pense na cadeia de caracteres como um equivalente aos argumentos de linha de comando. A cadeia de caracteres pode incluir qualquer informação que o aplicativo consiga reconhecer, se isso não tornar inválida a carga XML. Observe que o tamanho total da carga XML da notificação do sistema, incluindo a cadeia de caracteres de inicialização, não pode passar de 5 KB.

Se você não incluir uma cadeia de caracteres de atributo de inicialização, o aplicativo será iniciado normalmente, como se o usuário o tivesse iniciado a partir da tela inicial.

Nesta etapa, nós consideramos que um objeto XmlDocument chamado toastXml já tenha sido criado. Este exemplo cria o atributo launch, atribui seu valor de cadeia de caracteres e adiciona-o à carga XML da notificação do sistema. As instruções sobre como criar a notificação do sistema completa estão em Guia de início rápido: enviando uma notificação do sistema.



((XmlElement)toastNode).SetAttribute("launch", "{\"type\":\"toast\",\"param1\":\"12345\",\"param2\":\"67890\"}");

O código acima resulta no seguinte XML, baseado no conteúdo do elemento visual definido no Guia de início rápido: enviando uma notificação do sistema.



<toast launch="{&quot;type&quot;:&quot;toast&quot;:&quot;param1&quot;:&quot;12345&quot;:&quot;param2&quot;:&quot;67890&quot;}">                        
    <visual>
        <binding template="ToastImageAndText01">
            <image id="1" src="ms-appx:///images/redWide.png" alt="red graphic"/>
            <text id="1">Hello World!</text>
        </binding>
    </visual>
</toast>

Etapa 2: Manipular o evento "OnLaunched" do aplicativo

Quando o usuário clica em sua notificação do sistema ou a seleciona por toque, o aplicativo associado é iniciado e aciona seu evento OnLaunched.

Observação  Se você não incluir uma cadeia de caracteres de atributo de inicialização em sua notificação do sistema e o seu aplicativo já estiver em execução quando a notificação do sistema for selecionada, o evento OnLaunched não será acionado.

Este exemplo mostra a sintaxe para a substituição do evento OnLaunched, na qual você recupera e executa uma ação de acordo com a cadeia de caracteres de inicialização especificada pela notificação do sistema.



protected override void OnLaunched(LaunchActivatedEventArgs args)
{
    string launchString = args.Arguments

    ....
}

Tópicos relacionados

Exemplo de notificações do sistema
Windows.UI.Notifications API namespace
Visão geral das notificações do sistema
Diretrizes e lista de verificação para notificações do sistema
Guia de início rápido: enviando uma notificação do sistema
O catálogo de modelos de notificação do sistema
Esquema XML de notificação do sistema

 

 

Mostrar:
© 2015 Microsoft