Compartilhar via


Migração da funcionalidade de notificações push

Este tópico contém diretrizes de migração na área de recursos de notificações push.

Importante

No momento, há suporte apenas para notificações por push brutas e notificações por push de aplicativos. Não há suporte para notificações por push de selo e notificações por push de bloco.

Resumo das diferenças de API e/ou recursos

As notificações push podem ser divididas nesses quatro estágios separados.

Estágio UWP SDK do Aplicativo do Windows
Identidade MSA (Partner Center) Registro de Aplicativo do Azure (AAD)
Solicitação de canal Assíncronos Assíncronos
ID de registro do aplicativo do Azure
Lógica de repetição integrada (até 5 tentativas)
Ativação Em processo, PushTrigger*, ativação COM* Em processo, ativação COM, ShellExecute
Como enviar notificações por push Usa login.live.com ponto de extremidade para receber um token de acesso Usa o https://login.microsoftonline.com/{tenantID}/oauth2/token ponto de extremidade para solicitação de token

* Com suporte para Windows 10, versão 2004 (10.0; Build 19041) e posterior.

Configuração de identidade

No SDK do Aplicativo Windows, o recurso de notificações por push usa a identidade do AAD (Registro de Aplicativo do Azure), que remove o requisito de ter um PFN (Nome da Família de Pacotes) do Partner Center para usar notificações por push.

Solicitações de canal

A solicitação de canal é tratada de forma assíncrona e requer o GUID do Azure AppID e o ID do locatário do Azure (você recebe o Azure AppID e a ID do locatário de um registro de aplicativo do AAD). Você usa o Azure AppID para sua identidade no lugar do PFN (Nome da Família de Pacotes) que um aplicativo UWP usa. Caso a solicitação encontre um erro com nova tentativa, a plataforma de notificação tentará várias tentativas.

Um aplicativo SDK do Aplicativo Windows pode verificar o status de uma solicitação de canal.

Ativação

Consulte as etapas de registro e ativação do SDK do Aplicativo Windows em Configurar seu aplicativo para receber notificações por push.

Como enviar notificações por push

Um aplicativo SDK do Aplicativo Windows deve solicitar o token de acesso do ponto de extremidade do AAD, em vez do ponto de extremidade MSA.

Solicitação de token de acesso

Para um aplicativo UWP:

POST /accesstoken.srf HTTP/1.1
Host: login.live.com
Content-Type: application/x-www-form-urlencoded
Cookie: MSCC=73.140.231.96-US
Content-Length: 112

grant_type=client_credentials&client_id=<AppID_Here>&client_secret=<Client_Secret_Here>&scope=notify.windows.com

Para um aplicativo SDK do Aplicativo Windows (solicitação de token de acesso do AAD):

POST /{tenantID}/oauth2/v2.0/token Http/1.1
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 160

grant_type=client_credentials&client_id=<Azure_App_Registration_AppId_Here>&client_secret=<Azure_App_Registration_Secret_Here>&resource=https://wns.windows.com/

Postagem HTTP no WNS

Quando se trata de enviar uma solicitação HTTP POST para o WNS, não há alterações em relação à UWP. O token de acesso ainda é passado no cabeçalho de autorização.

POST /?token=[ChannelURI] HTTP/1.1
Host: dm3p.notify.windows.com
Content-Type: application/octet-stream
X-WNS-Type: wns/raw
Authorization: Bearer [your access token]
Content-Length: 46

{ Sync: "Hello from the Contoso App Service" }

Confira também