Notificação do aplicativo com atualização pendente

Você pode usar PendingUpdate para criar interações de várias etapas nas notificações do aplicativo. Por exemplo, você pode criar uma série de notificações em que as notificações subsequentes dependem das respostas das notificações anteriores.

Alerta com atualização pendente

Para obter mais informações sobre notificações do aplicativo, consulte a visão geral das notificações do aplicativo.

Visão geral

Para implementar uma notificação que use a atualização em espera como comportamento após a ativação:

  1. Nos botões de ativação em segundo plano, especifique um afterActivationBehavior de pendingUpdate.
  2. Atribua uma tag (e, opcionalmente, grupo) ao enviar sua notificação.
  3. Quando o usuário clica no botão, sua tarefa em segundo plano é ativada e a notificação permanece na tela em um estado de atualização pendente.
  4. Em sua tarefa em segundo plano, envie uma nova notificação com novo conteúdo usando a mesma Marca e Grupo para substituir a notificação pendente.

Definir o comportamento de atualização pendente

Observação

No momento, AppNotificationButton não dá suporte AfterActivationBehaviora . Utilize o payload XML diretamente com o construtor AppNotification para configurar afterActivationBehavior="pendingUpdate" em seus botões.

Nos botões de ativação em segundo plano, defina afterActivationBehavior como pendingUpdate. Isso só funciona para botões com activationType="background".

using Microsoft.Windows.AppNotifications;

string xml = @"
<toast>
  <visual>
    <binding template='ToastGeneric'>
      <text>Would you like to order lunch today?</text>
    </binding>
  </visual>
  <actions>
    <action
      content='Yes'
      arguments='action=orderLunch'
      activationType='background'
      afterActivationBehavior='pendingUpdate'/>
    <action
      content='No'
      arguments='action=cancelLunch'
      activationType='background'/>
  </actions>
</toast>";

var notification = new AppNotification(xml);
notification.Tag = "lunch";

AppNotificationManager.Default.Show(notification);

Substituir a notificação por novo conteúdo

Em resposta ao clique do usuário no botão, sua tarefa em segundo plano é disparada e você substitui a notificação enviando uma nova notificação com a mesma Marca e Grupo. Use AppNotificationBuilder.MuteAudio para silenciar o áudio em substituições em resposta a um clique no botão, pois o usuário já está interagindo com a notificação.

var notification = new AppNotificationBuilder()
    .AddText("Ordering your lunch...")
    .MuteAudio()
    .BuildNotification();

notification.Tag = "lunch";

AppNotificationManager.Default.Show(notification);

Consulte também