Horodateurs personnalisés sur les notifications d’application

Par défaut, l’horodateur des notifications d’applications, visible dans le centre de notifications, est réglé sur l’heure à laquelle la notification a été envoyée. Vous pouvez éventuellement remplacer l’horodatage par une date et une heure personnalisées, de sorte que l’horodateur représente l’heure à laquelle le message, l’information ou le contenu a été créé, plutôt que l’heure à laquelle la notification a été envoyée. Cela permet également de s’assurer que les notifications apparaissent dans le bon ordre dans le centre de notifications, qui est trié par heure. Nous recommandons à la plupart des applications de spécifier un horodateur personnalisé.

Cette fonctionnalité est disponible sur Windows 15063 et versions ultérieures.

App notification with custom timestamp

Remarque

Le terme « notification toast » est remplacé par « notification d’application ». Ces termes font tous deux référence à la même fonctionnalité de Windows, mais au fil du temps, nous allons effectuer une phase d’utilisation de la « notification toast » dans la documentation.

Pour utiliser un horodatage personnalisé, il suffit d’attribuer la propriété displayTimestamp à l’élément toast de la charge utile XML de votre notification d’application. À partir du Kit de développement logiciel (SDK) d’application Windows 1.2, vous pouvez ajouter un horodateur personnalisé à une notification d’application avec Microsoft.Windows.AppNotifications.Builder. Pour les applications UWP, vous pouvez utiliser la version 1.4.0 ou ultérieure de la bibliothèque NuGet de notifications de kits de ressource de la communauté UWP. Vous pouvez également spécifier l’horodateur en utilisant du xml brut.

var builder = new AppNotificationBuilder()
    .AddText("Matt sent you a friend request")
    .AddText("Hey, wanna dress up as wizards and ride around on hoverboards?")
    .SetTimeStamp(new DateTime(2017, 04, 15, 19, 45, 00, DateTimeKind.Utc));

Si vous utilisez XML, la date doit être formatée en ISO 8601.

Remarque

Vous ne pouvez utiliser que 3 décimales au maximum pour les secondes (bien qu’en réalité, il n’y ait aucun intérêt à fournir une information aussi granulaire). Si vous en fournissez plus, la charge utile sera invalide et vous recevrez la notification « Nouvelle notification ».

Conseils d’utilisation

Nous recommandons généralement à la plupart des applications de spécifier un horodateur personnalisé. Cela garantit que l’horodateur de la notification représente avec précision le moment où le message, l’information ou le contenu a été généré, indépendamment des retards du réseau, du mode avion ou de l’intervalle fixe des tâches d’arrière-plan périodiques.

Par exemple, une application d’actualités peut exécuter toutes les 15 minutes une tâche en arrière-plan qui vérifie la présence de nouveaux articles et affiche des notifications. Avant les horodatages personnalisés, l’horodateur correspondait au moment où la notification de l’application était générée (donc toujours par intervalles de 15 minutes). Toutefois, l’application peut désormais fixer l’heure à laquelle l’article a été publié. De même, les applications de courrier électronique et de réseaux sociaux peuvent bénéficier de cette fonctionnalité si un modèle similaire de tirage périodique est utilisé pour leurs notifications.

En outre, le fait de fournir un horodateur personnalisé garantit que l’horodatage est correct même si l’utilisateur est déconnecté de l’internet. Par exemple, lorsque l’utilisateur allume son ordinateur et que votre tâche d’arrière-plan s’exécute, vous pouvez enfin vous assurer que l’horodatage de vos notifications correspond à l’heure à laquelle les messages ont été envoyés, et non à l’heure à laquelle l’utilisateur a allumé son ordinateur.

Horodateur par défaut

Si vous ne fournissez pas d’horodateur personnalisé, nous utilisons l’heure à laquelle votre notification a été envoyée.

Si vous avez envoyé une notification push via WNS, nous utilisons l’heure à laquelle la notification a été reçue par le serveur WNS (de sorte qu’un éventuel temps de latence lors de l’envoi de la notification à l’appareil n’aura pas d’incidence sur l’horodateur).

Si vous avez envoyé une notification locale, nous utilisons l’heure à laquelle la plateforme de notification a reçu la notification (qui devrait être immédiate).