Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Windows fornisce diverse API di notifica in diverse generazioni di SDK. Se stai cercando online come inviare una notifica e trovare esempi in conflitto, questa pagina ti aiuterà a scegliere l'API appropriata per la tua app.
Quale API è consigliabile usare?
La risposta dipende dall'SDK di destinazione dell'app:
| Tipo di app | API consigliata | Namespace |
|---|---|---|
| WinUI 3/SDK per app di Windows (nuove app) | AppNotificationManager |
Microsoft.Windows.AppNotifications |
| macchine virtuali Windows, WinForms o Win32 non confezionato |
AppNotificationManager tramite NuGet |
Microsoft.Windows.AppNotifications |
| UWP (app esistenti, nessuna migrazione pianificata) | ToastNotificationManager |
Windows.UI.Notifications |
Importante
La maggior parte delle risposte su Stack Overflow e dei tutorial precedenti utilizza ToastNotificationManager dallo spazio dei nomi Windows.UI.Notifications. Questa è l'API WinRT UWP. Funziona nelle app UWP e può funzionare in alcuni scenari desktop, ma non è il percorso consigliato per le nuove app SDK per app di Windows. Utilizzare AppNotificationManager per nuovi sviluppi.
Confronto delle API notifiche
| Feature |
AppNotificationManager (SDK per app di Windows) |
ToastNotificationManager (WinRT) |
|---|---|---|
| Consigliato per | WinUI 3, macchine virtuali Windows, WinForms, Win32 senza pacchetto | UWP (Piattaforma Universale Windows) |
| Pacchetto NuGet | Microsoft.WindowsAppSDK |
Nessuno (posta in arrivo) |
| Identità del pacchetto richiesta | No (sono confezionati e non confezionati) | Obbligatorio per alcune funzionalità |
| Integrazione push |
PushNotificationManager (SDK per app di Windows) |
API del canale WNS (Windows.Networking.PushNotifications) |
| Sviluppo attivo | Sì | Solo manutenzione |
Tipi di notifiche
Dopo aver scelto l'API corretta, decidere come verrà recapitata la notifica:
| Tipo | Descrizione | Usare quando |
|---|---|---|
| Notifica dell'app locale | Attivato direttamente dal codice dell'app durante l'esecuzione | Si vuole avvisare l'utente di un evento in-app |
| Scheduled | Impostare un'ora futura per la visualizzazione della notifica | Promemoria del calendario, allarmi |
| Push (WNS) | Inviato dal servizio cloud tramite Windows Servizi di notifica push | Messaggi di chat, ultime notizie, aggiornamenti in tempo reale |
| Distintivo | Sovrimpressione piccola sull'icona della barra delle applicazioni dell'app | Conteggio non letto, indicatore di stato |
Per una suddivisione completa dei metodi di recapito, vedere Scegliere un metodo di recapito delle notifiche.
Passaggi successivi
Stai costruendo un'app WinUI 3 o SDK per app di Windows?
-
Panoramica delle notifiche delle app : notifiche di app locali e push con
AppNotificationManager - Guida introduttiva alle notifiche delle app
-
Panoramica delle notifiche push — Push WNS con
PushNotificationManager
Stai costruendo un'applicazione macchine virtuali Windows o WinForms?
- Guida rapida alle notifiche dell'app — le notifiche toast locali funzionano sia impacchettate che non impacchettate
- Guida introduttiva alle notifiche push — Le notifiche push WNS supportano un percorso limitato non impacchettato, ma l'impacchettamento (MSIX o impacchettamento con posizione esterna) è necessario per la consegna in background e l'attivazione COM.
Importante
SDK per app di Windows le notifiche push richiedono un account Azure e una registrazione dell'app Azure AD. Se l'app è in pacchetto, devi anche inviare una richiesta di mapping PFN (Package Family Name) tramite posta elettronica, consentendo fino a una settimana di tempo di elaborazione prima dell'avvio. Per informazioni sui prerequisiti completi, vedere la guida introduttiva alle notifiche push .
Creazione o gestione di un'app UWP?
- Inviare una notifica dell'app locale dalle app UWP C++
- Panoramica di Windows Push Notification Services (WNS)
Migrare un'app UWP al SDK per app di Windows?