Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo aborda os três tipos de canais de notificação por push do Windows (primário, secundário e alternativo) que ajudam você a fornecer conteúdo para seu aplicativo.
(Para obter detalhes sobre como criar notificações push, consulte o Visão geral dos Serviços de Notificação por Push do Windows (WNS).)
Tipos de canais push
Há três tipos de canais de push que podem ser usados para enviar notificações para um aplicativo do Windows. Eles são:
Canal primário - o canal de push "tradicional". Pode ser usado por qualquer aplicativo na loja para enviar notificações do sistema, bloco, raw ou notificação. Saiba mais aqui.
Canal de bloco secundário - usado para enviar atualizações de bloco para um bloco secundário. Só pode ser usado para enviar notificações de bloco ou selo para um bloco secundário fixado na tela inicial do usuário
Canal - alternativo não é mais suportado - Um novo tipo de canal adicionado na Atualização para Criadores. Ele permite que notificações brutas sejam enviadas para qualquer aplicativo do Windows, incluindo aqueles que não estão registrados na Loja. Novamente, observe que o canal alternativo não é mais suportado.
Observação
Não importa qual canal de push você use, depois que seu aplicativo estiver em execução no dispositivo, ele sempre poderá enviar notificações locais de notificação do sistema, bloco ou notificação. Ele pode enviar notificações locais dos processos do aplicativo em primeiro plano ou de uma tarefa em segundo plano.
Canais primários
Esses são os canais mais usados no Windows no momento e são bons para quase todos os cenários em que seu aplicativo será distribuído por meio da Microsoft Store. Eles permitem que você envie todos os tipos de notificações para o aplicativo.
O que os canais primários permitem?
- Enviar atualizações de bloco ou notificação para o bloco primário. Se o usuário optou por fixar seu bloco na tela inicial, esta é sua chance de se exibir. Envie atualizações com informações úteis ou lembretes de experiências em seu aplicativo.
- Envio de notificações do sistema. As notificações do sistema são uma chance de obter algumas informações na frente do usuário imediatamente. Eles são pintados pelo shell sobre a maioria dos aplicativos e ficam no centro de ação para que o usuário possa voltar e interagir com eles mais tarde.
- Enviar notificações brutas para disparar uma tarefa em segundo plano. Às vezes, você deseja fazer algum trabalho em nome do usuário com base em uma notificação. As notificações brutas permitem que as tarefas em segundo plano do seu aplicativo sejam executadas
- Criptografia de mensagens em trânsito fornecida pelo Windows usando TLS. As mensagens são criptografadas na transmissão, tanto no WNS quanto no dispositivo do usuário.
Limitações dos canais primários
- Requer o uso da API REST do WNS para notificações por push, o que não é padrão entre fornecedores de dispositivos.
- Apenas um canal pode ser criado por aplicativo
- Requer que seu aplicativo seja registrado na Microsoft Store
Criando um canal principal
PushNotificationChannel channel =
await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();
Canais de bloco secundários
Esses são canais que podem ser usados para enviar atualizações de bloco e notificação para um bloco secundário. Eles são usados por aplicativos para notificar os usuários sobre ações ou informações interessantes com as quais eles podem interagir no aplicativo, como novas mensagens em um bate-papo em grupo ou um placar esportivo atualizado.
O que os canais de bloco secundário habilitam?
- Enviar notificações de bloco ou notificação para blocos secundários. Os blocos secundários são uma ótima maneira de atrair os usuários de volta para seu aplicativo. Eles são um link profundo para as informações com as quais se importam, e colocar informações relevantes nos blocos ajuda a trazê-los de volta sempre.
- Separação de canais (e expirações) entre vários ladrilhos. Isso permite que você separe a lógica no back-end entre os vários tipos de blocos secundários que um usuário pode fixar em sua tela inicial.
- Criptografia de mensagens em trânsito fornecida pelo Windows usando TLS. As mensagens são criptografadas na transmissão, tanto no WNS quanto no dispositivo do usuário.
Limitações dos canais de mosaico secundários
- Não são permitidas notificações de notificação do sistema ou raw. As notificações do sistema ou brutas enviadas para um bloco secundário são ignoradas pelo sistema.
- Requer que seu aplicativo seja registrado na Microsoft Store
Criando um canal de bloco secundário
PushNotificationChannel channel =
await PushNotificationChannelManager.CreatePushNotificationChannelForSecondaryTileAsync(tileId);
Canais alternativos
Os canais alternativos permitem que os aplicativos enviem notificações por push sem se registrar na Microsoft Store ou criar canais por push fora do principal usado para o aplicativo.
Observação
A partir de 1º de julho de 2021, os aplicativos que desejam usar o canal de push da Web ou o canal alternativo para enviar notificações baseadas em navegador por meio do WNS precisarão ser integrados à Microsoft Store.
O que os canais alternativos permitem?
- Envie notificações por push brutas para um Windows em execução em qualquer dispositivo Windows. Canais alternativos permitem apenas notificações brutas (no entanto, você ainda pode ativar uma tarefa em segundo plano para mostrar localmente notificações do sistema ou de bloco).
- Permite que os aplicativos criem vários canais de push brutos para diferentes recursos dentro do aplicativo. Um aplicativo pode criar até 1000 canais alternativos, e cada um é válido por 30 dias. Cada um desses canais pode ser gerenciado ou revogado separadamente pelo aplicativo.
- Canais de push alternativos podem ser criados sem registrar um aplicativo na Microsoft Store. Se o aplicativo for instalado em dispositivos sem registrá-lo na Microsoft Store, ele ainda poderá receber notificações por push.
- Os servidores podem enviar notificações por push usando as APIs REST padrão do W3C e o protocolo VAPID. Os canais alternativos usam o protocolo padrão W3C, o que permite simplificar a lógica do servidor que precisa ser mantida.
- Criptografia de mensagens completa, de ponta a ponta. Embora o canal primário forneça criptografia durante o trânsito, se você quiser ser mais seguro, os canais alternativos permitem que seu aplicativo passe por cabeçalhos de criptografia para proteger uma mensagem.
Limitações de canais alternativos
- O servidor do aplicativo não pode enviar notificações do tipo push toast, tile ou badge. Você só pode enviar notificações brutas por push. Seu aplicativo ainda pode enviar notificações locais de sua tarefa em segundo plano.
- Requer uma API REST diferente dos canais de bloco primários ou secundários. Usar a API REST padrão do W3C significa que seu aplicativo precisará ter uma lógica diferente para enviar notificações do sistema ou atualizações de bloco
Criando um canal alternativo
PushNotificationChannel webChannel =
await PushNotificationChannelManager.GetDefault().CreateRawPushNotificationChannelWithAlternateKeyForApplicationAsync(applicationServerKey, appChannelId);
Comparação de tipo de canal
Aqui está uma rápida comparação entre os diferentes tipos de canais:
Tipo | Empurrar torrada? | Empurrar bloco/emblema? | Enviar notificações brutas? | Autenticação | API | É necessário registro na loja? | Canais | Criptografia |
---|---|---|---|---|---|---|---|---|
Principal | Sim | Sim - somente bloco primário | Sim | OAuth | WNS REST API | Sim | Um por aplicativo | Em Trânsito |
Bloco secundário | Não | Sim - somente bloco secundário | Não | OAuth | WNS REST API | Sim | Um por bloco secundário | Em Trânsito |
Alternativo | Não | Não | Sim | INSÍPIDO | Padrão WebPush W3C | Não | 1.000 por aplicativo | Em trânsito + criptografia de ponta a ponta possível com passagem de cabeçalho (requer código do aplicativo) |
Escolhendo o canal certo
Em geral, recomendamos usar o canal principal em seu aplicativo, com algumas exceções:
- Se você estiver enviando uma atualização de bloco para um bloco secundário, use o canal de push de bloco secundário.
- Se você estiver distribuindo canais para outros serviços (como no caso de um navegador), use o canal alternativo.
- Se você estiver criando um aplicativo que não será listado na Windows Store (como um aplicativo LOB), use um canal alternativo.
- Se você tiver um código push da Web existente em seu servidor que deseja reutilizar ou precisar de vários canais em seu serviço de back-end, use canais alternativos.
Artigos relacionados
- Enviar uma notificação de bloco local
- Notificações do sistema adaptáveis e interativas
- Início rápido: enviar uma notificação por push
- Como atualizar um selo por meio de notificações por push
- Como solicitar, criar e salvar um canal de notificação
- Como interceptar notificações para executar aplicativos
- Como autenticar com o Serviço de Notificação por Push do Windows (WNS)
- Cabeçalhos de solicitação e resposta do serviço de notificação por push
- Diretrizes e lista de verificação para notificações por push
- Notificações brutas
Windows developer