Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Możesz zaplanować, aby app powiadomienie pojawiło się w późniejszym czasie, niezależnie od tego, czy app jest uruchomiony w tym czasie. Jest to przydatne w przypadku scenariuszy, takich jak wyświetlanie przypomnień lub innych zadań podrzędnych dla użytkownika, w których czas i zawartość powiadomienia są znane z wyprzedzeniem.
Zaplanowane powiadomienia mają 5-minutowe okno dostarczania. Jeśli komputer jest wyłączony w zaplanowanym czasie dostawy i pozostaje wyłączony przez dłużej niż 5 minut, powiadomienie zostanie "usunięte", ponieważ nie będzie już istotne dla użytkownika. Jeśli potrzebujesz gwarantowanego dostarczania powiadomień niezależnie od czasu wyłączenia komputera, zalecamy użycie zadania w tle z wyzwalaczem czasu. Aby uzyskać więcej informacji, zobacz Zadania w tle.
Aby uzyskać więcej informacji na temat app powiadomień, zobacz App omówienie powiadomień.
Uwaga / Notatka
Przykłady kodu w tym artykule używają przestrzeni nazw Microsoft.Windows.AppNotifications do tworzenia zawartości powiadomień oraz przestrzeni nazw Windows.UI.Notifications do planowania. Te dwie przestrzenie nazw mogą być używane razem w tym samym app.
Planowanie powiadomienia
Aby zaplanować powiadomienie w przyszłości, użyj polecenia AppNotificationBuilder aby zdefiniować zawartość powiadomienia, następnie wywołaj AddToSchedule z ScheduledToastNotification. W poniższym przykładzie ustawiono powiadomienie, które pojawi się za 10 sekund.
using Microsoft.Windows.AppNotifications.Builder;
using Windows.UI.Notifications;
using Windows.Data.Xml.Dom;
var payload = new AppNotificationBuilder()
.AddArgument("action", "viewItemsDueToday")
.AddText("ASTR 170B1")
.AddText("You have 3 items due today!")
.BuildNotification()
.Payload;
var doc = new XmlDocument();
doc.LoadXml(payload);
var scheduledNotification = new ScheduledToastNotification(doc, DateTimeOffset.Now.AddSeconds(10));
scheduledNotification.Tag = "18365";
scheduledNotification.Group = "ASTR 170B1";
ToastNotificationManager.CreateToastNotifier().AddToSchedule(scheduledNotification);
Właściwości Tag i Grupa działają jako złożony klucz podstawowy powiadomienia. Ustawienie tych wartości umożliwia anulowanie lub zastąpienie zaplanowanego powiadomienia później, jak pokazano w następnej sekcji.
Anulowanie zaplanowanych powiadomień
Aby anulować zaplanowane powiadomienie, wywołaj metodę GetScheduledToastNotifications , aby pobrać listę oczekujących powiadomień, a następnie wywołaj metodę RemoveFromSchedule na tym pasującym do określonego wcześniej tagu.
var notifier = ToastNotificationManager.CreateToastNotifier();
var scheduled = notifier.GetScheduledToastNotifications();
foreach (var notification in scheduled)
{
if (notification.Tag == "18365")
{
notifier.RemoveFromSchedule(notification);
}
}