Udostępnij przez


Niestandardowe znaczniki czasu w powiadomieniach aplikacji

Domyślnie sygnatura czasowa powiadomień aplikacji, która jest widoczna w Centrum powiadomień, jest ustawiana na czas wysłania powiadomienia. Opcjonalnie można zastąpić znacznik czasu własną niestandardową datą i godziną, tak aby znacznik czasu reprezentuje godzinę, w której faktycznie utworzono komunikat/informacje/zawartość, a nie czas wysłania powiadomienia. Dzięki temu powiadomienia będą wyświetlane w odpowiedniej kolejności w Centrum powiadomień, które są sortowane według czasu. Zalecamy, aby większość aplikacji określała niestandardowy znacznik czasu.

Ta funkcja jest dostępna w systemie Windows Build 15063 lub nowszym.

powiadomienie aplikacji z niestandardowym znacznikiem czasu

Note

Określenie "powiadomienie typu toast" jest zastępowane terminem "powiadomienie aplikacji". Te dwa terminy odnoszą się do tej samej funkcji systemu Windows, ale z czasem wyeliminujemy użycie "toast notification" w dokumentacji.

Aby użyć niestandardowego znacznika czasu, po prostu przypisz właściwość displayTimestamp w elemencie toast w pliku XML powiadomienia aplikacji. Począwszy od zestawu Windows App SDK 1.2, można dodać niestandardowy znacznik czasu do powiadomienia aplikacji za pomocą polecenia Microsoft.Windows.AppNotifications.Builder. W przypadku aplikacji platformy UWP można użyć biblioteki NuGet w wersji 1.4.0 lub nowszej biblioteki NuGet zestawów narzędzi platformy UWP Community Toolkit. Możesz również określić znacznik czasu przy użyciu surowego XML.

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

Jeśli używasz kodu XML, data musi być sformatowana w ISO 8601.

Note

Można stosować co najwyżej 3 miejsca dziesiętne dla sekund (chociaż realistycznie rzecz biorąc, nie ma potrzeby podawania aż tak szczegółowych wartości). Jeśli podasz więcej, ładunek danych będzie nieprawidłowy i otrzymasz powiadomienie "Nowe powiadomienie".

Wskazówki dotyczące użycia

Zalecamy, aby większość aplikacji określała własny znacznik czasu. Dzięki temu znacznik czasu powiadomienia dokładnie odzwierciedla moment, w którym wygenerowano komunikat/informację/zawartość, bez względu na opóźnienia sieci, tryb samolotowy czy stałe interwały okresowych zadań w tle.

Na przykład aplikacja wiadomości może uruchamiać zadanie w tle co 15 minut, które sprawdza nowe artykuły i wyświetla powiadomienia. Przed niestandardowymi znacznikami czasu sygnatura czasowa odpowiada czasowi wygenerowania powiadomienia aplikacji (w związku z czym zawsze w 15-minutowych odstępach czasu). Jednak teraz aplikacja może ustawić znacznik czasu na czas, w jaki artykuł został rzeczywiście opublikowany. Podobnie aplikacje poczty e-mail i aplikacje społecznościowe mogą korzystać z tej funkcji, jeśli do ich powiadomień jest używany podobny wzorzec okresowego ściągania.

Ponadto podanie niestandardowego znacznika czasu gwarantuje, że sygnatura czasowa jest poprawna, nawet jeśli użytkownik został odłączony od Internetu. Na przykład gdy użytkownik włączy komputer i zostanie uruchomione zadanie w tle, możesz w końcu upewnić się, że znacznik czasu powiadomień reprezentuje czas, w którym wiadomości zostały wysłane, a nie czas włączenia komputera przez użytkownika.

Domyślny znacznik czasu

Jeśli nie podasz niestandardowego znacznika czasu, użyjemy czasu wysłania powiadomienia.

Jeśli wysłałeś powiadomienie push za pośrednictwem usługi WNS, używamy czasu, gdy powiadomienie zostało odebrane przez serwer WNS (tak że wszelkie opóźnienia w dostarczaniu powiadomienia do urządzenia nie będą mieć wpływu na znacznik czasu).

Jeśli wysłano powiadomienie lokalne, użyjemy czasu odebrania powiadomienia przez platformę powiadomień (co powinno być natychmiast).