Migration des fonctionnalités de notifications Push
Cette rubrique contient des conseils de migration dans le domaine des fonctionnalités de notifications Push.
Important
Seules les notifications Push brutes et les notifications Push d’application sont actuellement prises en charge. Les notifications Push de badge et les notifications Push de vignettes ne sont pas prises en charge.
Résumé des différences d’API et/ou de fonctionnalités
Les notifications Push peuvent être divisées en quatre étapes distinctes.
Étape | UWP | Kit de développement logiciel (SDK) pour application Windows |
---|---|---|
Identité | Espace partenaires (MSA) | Inscription d’application Azure (AAD) |
Demande de canal | Asynchrone | Asynchrone ID d’inscription d’application Azure Logique de nouvelle tentative intégrée (jusqu’à 5 nouvelles tentatives) |
Activation | In-process, PushTrigger*, COM activation* | Activation COM in-process, ShellExecute |
Envoi de notifications Push | Utilise login.live.com point de terminaison pour recevoir un jeton d’accès | Utilise le point de terminaison pour la https://login.microsoftonline.com/{tenantID}/oauth2/token demande de jeton |
* Pris en charge pour Windows 10, version 2004 (10.0 ; Build 19041), et versions ultérieures.
Configuration de l’identité
Dans le Kit de développement logiciel (SDK) d’application Windows, la fonctionnalité de notifications Push utilise l’identité d’Azure App Registration (AAD), ce qui supprime l’exigence d’avoir un nom de famille de package (PFN) dans l’Espace partenaires afin d’utiliser des notifications Push.
- Pour une application UWP, vous inscrivez et inscrivez l’application dans l’Espace partenaires du Windows Store.
- Pour une application sdk d’application Windows, vous créez un compte Azure et créez une inscription d’application Azure (AAD).
Demandes de canal
La demande de canal est gérée de manière asynchrone et nécessite le GUID Azure AppID et le tenantID Azure (vous recevez l’ID d’application Azure et l’ID de locataire à partir d’une inscription d’application AAD). Vous utilisez Azure AppID pour votre identité à la place du nom de famille de package (PFN) utilisé par une application UWP. Si la requête s’exécute dans une erreur retentable, la plateforme de notification tente plusieurs nouvelles tentatives.
Une application sdk d’application Windows peut vérifier l’état d’une demande de canal.
Activation
Consultez les étapes d’inscription et d’activation du Kit de développement logiciel (SDK) d’application Windows lors de la configuration de votre application pour recevoir des notifications Push.
Envoi de notifications Push
Une application du Kit de développement logiciel (SDK) d’application Windows doit demander le jeton d’accès à partir du point de terminaison AAD, plutôt que du point de terminaison MSA.
Demande de jeton d’accès
Pour une application 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
Pour une application sdk d’application Windows (demande de jeton d’accès 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/
HTTP Post to WNS
Quand il s’agit d’envoyer une requête HTTP POST à WNS, il n’existe aucune modification de UWP. Le jeton d’accès est toujours transmis dans l’en-tête d’autorisation.
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" }
Voir aussi
Windows developer