Timestamp personalizzati nelle notifiche dell'app

Per impostazione predefinita, il timestamp sulle notifiche dell'app, visibile all'interno del Centro notifiche, viene impostato sull'ora di invio della notifica. Facoltativamente, puoi eseguire l'override del timestamp con la data e l'ora personalizzate, in modo che il timestamp rappresenti l'ora in cui è stato effettivamente creato il messaggio/informazioni/contenuto, anziché l'ora in cui è stata inviata la notifica. Ciò garantisce anche che le notifiche vengano visualizzate nell'ordine corretto all'interno del Centro notifiche, che viene ordinato in base all'ora. È consigliabile che la maggior parte delle app specifichi un timestamp personalizzato.

Questa funzionalità è disponibile in Windows Build 15063 e versioni successive.

Notifica dell'app con timestamp personalizzato

Nota

Il termine "notifica di tipo avviso popup" viene sostituito con "notifica dell'app". Questi termini si riferiscono entrambi alla stessa funzionalità di Windows, ma nel corso del tempo l'uso della "notifica di tipo avviso popup" verrà eseguito nella documentazione.

Per usare un timestamp personalizzato, è sufficiente assegnare la proprietà displayTimestamp sull'elemento avviso popup del payload XML di notifica dell'app. A partire da SDK per app di Windows 1.2, è possibile aggiungere un timestamp personalizzato a una notifica dell'app con Microsoft.Windows.AppNotifications.Builder. Per le app UWP, puoi usare la versione 1.4.0 o successiva della libreria NuGet UWP Community Toolkit Notifications. Puoi anche specificare il timestamp usando xml non elaborato.

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));

Se si usa XML, la data deve essere formattata in ISO 8601.

Nota

Puoi usare al massimo 3 posizioni decimali nei secondi (anche se realisticamente non esiste alcun valore per fornire qualsiasi elemento granulare). Se specifichi altro, il payload non sarà valido e riceverai la notifica "Nuova notifica".

Linee guida sull'utilizzo

In generale, ti raccomandiamo che la maggior parte delle app specifichi un timestamp personalizzato. In questo modo si garantisce che il timestamp della notifica rappresenti in modo accurato quando è stato generato il messaggio/informazioni/contenuto, indipendentemente dai ritardi di rete, dalla modalità aereo o dall'intervallo fisso delle attività in background periodiche.

Ad esempio, un'app di notizie potrebbe eseguire un'attività in background ogni 15 minuti che verifica la presenza di nuovi articoli e visualizza le notifiche. Prima dei timestamp personalizzati, il timestamp corrispondeva a quando è stata generata la notifica dell'app (pertanto sempre in intervalli di 15 minuti). Tuttavia, ora l'app può impostare il timestamp sull'ora in cui l'articolo è stato effettivamente pubblicato. Analogamente, le app di posta elettronica e le app di social network possono trarre vantaggio da questa funzionalità se per le notifiche viene usato un modello simile di pull periodico.

Inoltre, fornendo un timestamp personalizzato, il timestamp è corretto anche se l'utente è stato disconnesso da Internet. Ad esempio, quando l'utente attiva il computer e l'attività in background viene eseguita, è infine possibile assicurarsi che il timestamp sulle notifiche rappresenti l'ora in cui i messaggi sono stati inviati, anziché l'ora in cui l'utente ha attivato il computer.

Timestamp predefinito

Se non fornisci un timestamp personalizzato, usiamo l'ora di invio della notifica.

Se è stata inviata una notifica push tramite WNS, viene usata l'ora in cui la notifica è stata ricevuta dal server WNS ( quindi qualsiasi latenza per il recapito della notifica al dispositivo non influirà sul timestamp).

Se hai inviato una notifica locale, usiamo l'ora in cui la piattaforma di notifica ha ricevuto la notifica (che dovrebbe essere immediatamente).