Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Met geplande app meldingen kunt u een melding plannen die op een later tijdstip wordt weergegeven, ongeacht of app op dat moment actief is. Dit is handig voor scenario's zoals het weergeven van herinneringen of andere opvolgingstaken voor de gebruiker, waarbij de tijd en inhoud van de melding van tevoren bekend zijn.
Houd er rekening mee dat geplande app meldingen een bezorgingsvenster van 5 minuten hebben. Als de computer is uitgeschakeld tijdens de geplande levertijd en langer dan 5 minuten uitgeschakeld blijft, wordt de melding 'verwijderd' omdat deze niet langer relevant is voor de gebruiker. Als u gegarandeerde bezorging van meldingen nodig hebt, ongeacht hoe lang de computer was uitgeschakeld, raden we u aan een achtergrondtaak met een tijdtrigger te gebruiken, zoals wordt geïllustreerd in dit codevoorbeeld.
Note
De term 'toast melding' wordt vervangen door 'app notification'. Deze termen verwijzen beide naar dezelfde functie van Windows, maar in de loop van de tijd wordt het gebruik van 'toast melding' in de documentatie uitgefaseerd.
Important
Desktoptoepassingen (zowel verpakt als uitgepakt) hebben iets andere stappen voor het verzenden van meldingen en het afhandelen van activeringen. Volg de onderstaande instructies, maar vervang ToastNotificationManager door de DesktopNotificationManagerCompat klasse uit de bureaublad-apps documentatie.
Belangrijke API's: ScheduledToastNotification-klasse
Prerequisites
Om dit onderwerp volledig te begrijpen, is het volgende handig...
- Een werkende kennis van app meldingsvoorwaarden en concepten. Raadpleeg voor meer informatie Toast en het overzicht van het actiecentrum.
- Een vertrouwdheid met windows 10-meldingsinhoud app . Zie de documentatie voor meldingsinhoud voor meer informatieApp.
- Een Windows 10 UWP-project app
Stap 1: NuGet-pakket installeren
Installeer het NuGet-pakket Microsoft.Toolkit.Uwp.Notifications. Ons codevoorbeeld gebruikt dit pakket. Aan het einde van het artikel geven we de codefragmenten zonder opmaak die geen NuGet-pakketten gebruiken. Met dit pakket kunt u meldingen maken app zonder XML te gebruiken.
Stap 2: Naamruimtedeclaraties toevoegen
using Microsoft.Toolkit.Uwp.Notifications; // Notifications library
Stap 3: De melding plannen
We gebruiken een eenvoudige op tekst gebaseerde melding om een leerling/student te herinneren aan het huiswerk dat ze vandaag moeten hebben. Maak de melding en plan deze!
// Construct the content and schedule the toast!
new ToastContentBuilder()
.AddArgument("action", "viewItemsDueToday")
.AddText("ASTR 170B1")
.AddText("You have 3 items due today!");
.Schedule(DateTime.Now.AddSeconds(5));
Geef een primaire sleutel op voor uw melding
Als u de geplande melding programmatisch wilt annuleren, verwijderen of vervangen, moet u de eigenschap Tag (en eventueel de eigenschap Groep) gebruiken om een primaire sleutel voor uw melding op te geven. Vervolgens kunt u deze primaire sleutel in de toekomst gebruiken om de melding te annuleren, te verwijderen of te vervangen.
Zie Snelstartgids: Meldingen beheren in het actiecentrum (XAML) voor meer informatie over het vervangen/verwijderen van reeds geleverde app meldingen.
Tag en groep fungeren gecombineerd als een samengestelde primaire sleutel. Groep is de meer algemene id, waar u groepen kunt toewijzen zoals 'wallPosts', 'messages', 'friendRequests', enzovoort. Vervolgens moet Tag de melding zelf uniek identificeren vanuit de groep. Met behulp van een algemene groep kunt u vervolgens alle meldingen uit die groep verwijderen met behulp van de RemoveGroup-API.
// Construct the content and schedule the toast!
new ToastContentBuilder()
.AddArgument("action", "viewItemsDueToday")
.AddText("ASTR 170B1")
.AddText("You have 3 items due today!");
.Schedule(DateTime.Now.AddSeconds(5), toast =>
{
toast.Tag = "18365";
toast.Group = "ASTR 170B1";
});
Geplande meldingen annuleren
Als u een geplande melding wilt annuleren, moet u eerst de lijst met alle geplande meldingen ophalen.
Zoek vervolgens de geplande app melding die overeenkomt met de tag (en eventueel groep) die u eerder hebt opgegeven en roep RemoveFromSchedule() aan.
// Create the toast notifier
ToastNotifierCompat notifier = ToastNotificationManagerCompat.CreateToastNotifier();
// Get the list of scheduled toasts that haven't appeared yet
IReadOnlyList<ScheduledToastNotification> scheduledToasts = notifier.GetScheduledToastNotifications();
// Find our scheduled toast we want to cancel
var toRemove = scheduledToasts.FirstOrDefault(i => i.Tag == "18365" && i.Group == "ASTR 170B1");
if (toRemove != null)
{
// And remove it from the schedule
notifier.RemoveFromSchedule(toRemove);
}
Important
nl-NL: Een niet-verpakte (ontbreekt pakketidentiteit tijdens runtime) Win32 app moet de klasse ToastNotificationManagerCompat gebruiken, zoals hierboven te zien is. Als u ToastNotificationManager zelf gebruikt, ontvangt u een niet-gevonden-element uitzondering. Alle typen apps kunnen de Compat-klasse gebruiken en deze werkt correct.
Activation handling
Zie de documentatie voor het verzenden van een lokale app melding voor meer informatie over het afhandelen van activering. Activering van een geplande app melding wordt hetzelfde afgehandeld als de activering van een lokale app melding.
Acties, invoer en meer toevoegen
Zie de documentatie voor lokale app meldingen verzenden voor meer informatie over geavanceerde onderwerpen, zoals acties en invoer. Acties en invoer werken hetzelfde in lokale app meldingen als in geplande app meldingen.
Resources
Windows developer