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.
Questo articolo illustra i tre tipi di Windows canali di notifica push (primario, secondario e alternativo) che consentono di distribuire contenuto all'app.
Per informazioni dettagliate su come creare notifiche push, vedere la panoramica dei Windows Push Notification Services (WNS).
Tipi di canali push
Esistono tre tipi di canali push che possono essere usati per inviare notifiche a un'app Windows. Sono:
canale primario: il canale push "tradizionale". Può essere usato da qualsiasi app nello Store per inviare notifiche di tipo toast, riquadro, grezzo o badge. Altre informazioni sono disponibili qui.
canale riquadro secondario - usato per inviare gli aggiornamenti del riquadro a un riquadro secondario. Può essere usato solo per inviare notifiche dei riquadri o dei badge a un riquadro secondario aggiunto nella schermata iniziale dell'utente.
Canale alternativo - Non più supportato: nuovo tipo di canale aggiunto in Creators Update. Consente l'invio di notifiche non elaborate a qualsiasi app Windows, incluse quelle non registrate nello Store. Anche in questo caso, si noti che il canale alternativo non è più supportato.
Note
Indipendentemente dal canale push usato, quando l'app è in esecuzione nel dispositivo, sarà sempre in grado di inviare notifiche di tipo avviso popup, riquadro o badge locali. Può inviare notifiche locali dai processi dell'app in primo piano o da un'attività in background.
Canali primari
Questi sono i canali usati più di frequente in Windows in questo momento e sono validi per quasi tutti gli scenari in cui l'app verrà distribuita tramite il Microsoft Store. Consentono di inviare all'app tutti i tipi di notifiche.
Cosa abilitano i canali primari?
- Invio di aggiornamenti di riquadri o badge al riquadro principale. Se l'utente ha scelto di aggiungere il riquadro alla schermata iniziale, questa è la tua opportunità di metterti in mostra. Inviare aggiornamenti con informazioni utili o promemoria delle esperienze all'interno dell'app.
- Invio di notifiche toast. Le notifiche toast offrono l'opportunità di mostrare immediatamente alcune informazioni all'utente. Vengono dipinte dalla shell sopra la maggior parte delle app e si trovano nel centro notifiche, in modo che l'utente possa tornare indietro ed interagire con esse in un secondo momento.
- Invio di notifiche non elaborate per attivare un'attività in background. A volte si vuole eseguire alcune operazioni per conto dell'utente in base a una notifica. Le notifiche non elaborate consentono l'esecuzione delle attività in background dell'app
- Crittografia dei messaggi in transito fornita da Windows tramite TLS. I messaggi vengono crittografati durante il transito sia quando entrano in WNS sia quando vengono inviati al dispositivo dell'utente.
Limitazioni dei canali primari
- Richiede l'uso dell'API REST WNS per eseguire il push delle notifiche, che non è standard tra i fornitori di dispositivi.
- È possibile creare un solo canale per ogni app
- Richiede la registrazione dell'app nel Microsoft Store
Creazione di un canale primario
PushNotificationChannel channel =
await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();
Canali di riquadri secondari
Si tratta di canali che possono essere usati per inviare aggiornamenti di riquadri e badge a un riquadro secondario. Questi vengono usati dalle app per notificare agli utenti azioni o informazioni interessanti con cui possono interagire nell'app, ad esempio nuovi messaggi in una chat di gruppo o un punteggio sportivo aggiornato.
Cosa consentono i canali dei riquadri secondari?
- Invio di notifiche di tipo riquadro o badge ai riquadri secondari. I riquadri secondari sono un ottimo modo per riattrarre gli utenti nella tua app. Sono un collegamento diretto alle informazioni che sono di loro interesse e l'inserimento di informazioni pertinenti sui tile aiuta ad attirarli più volte.
- Separazione dei canali (e delle scadenze) tra varie tessere. In questo modo è possibile separare la logica nel back-end tra i vari tipi di riquadri secondari che un utente potrebbe aggiungere alla schermata iniziale.
- Crittografia dei messaggi in transito fornita da Windows tramite TLS. I messaggi vengono crittografati durante il transito sia quando entrano in WNS sia quando vengono inviati al dispositivo dell'utente.
Limitazioni dei canali delle tile secondarie
- Nessun avviso popup o notifiche non elaborate consentite. Le notifiche popup o non elaborate inviate a un riquadro secondario vengono ignorate dal sistema.
- Richiede la registrazione dell'app nel Microsoft Store
Creazione di un canale riquadro secondario
PushNotificationChannel channel =
await PushNotificationChannelManager.CreatePushNotificationChannelForSecondaryTileAsync(tileId);
Canali alternativi
I canali alternativi consentono alle app di inviare notifiche push senza registrarsi al Microsoft Store o di creare canali push all'esterno di quello primario usato per l'app.
Note
A partire dal 1° luglio 2021, le applicazioni che vogliono usare il canale push Web o il canale alternativo per inviare notifiche basate su browser tramite WNS dovranno essere caricate nel Microsoft Store.
Cosa consentono i canali alternativi?
- Inviare notifiche push non elaborate a un Windows in esecuzione in qualsiasi dispositivo Windows. I canali alternativi consentono solo notifiche grezze (tuttavia è comunque possibile attivare un'attività in background per mostrare localmente notifiche di tipo toast o riquadro).
- Consente alle app di creare più canali push non elaborati per diverse funzionalità all'interno dell'app. Un'app può creare fino a 1000 canali alternativi e ognuna è valida per 30 giorni. Ognuno di questi canali può essere gestito o revocato separatamente dall'app.
- È possibile creare canali push alternativi senza registrare un'app con il Microsoft Store. Se l'app verrà installata nei dispositivi senza registrarla nel Microsoft Store, sarà comunque in grado di ricevere notifiche push.
- I server possono eseguire il push delle notifiche usando le API REST standard W3C e il protocollo VAPID. I canali alternativi usano il protocollo standard W3C, in modo da semplificare la logica del server che deve essere gestita.
- Crittografia end-to-end completa dei messaggi. Mentre il canale primario fornisce la crittografia durante il transito, se vuoi essere più sicuro, i canali alternativi consentono all'app di passare le intestazioni di crittografia per proteggere un messaggio.
Limitazioni dei canali alternativi
- Il server dell'app non può inviare notifiche di tipo avviso popup, riquadro o tipo di notifica push. Puoi inviare solo notifiche push non elaborate. L'app è ancora in grado di inviare notifiche locali dalla tua attività in background.
- Richiede un'API REST diversa rispetto ai canali del riquadro primario o secondario. L'uso dell'API REST W3C standard significa che la tua app avrà bisogno di una logica diversa per l'invio di notifiche toast o aggiornamenti delle piastrelle push.
Creazione di un canale alternativo
PushNotificationChannel webChannel =
await PushNotificationChannelManager.GetDefault().CreateRawPushNotificationChannelWithAlternateKeyForApplicationAsync(applicationServerKey, appChannelId);
Confronto tra tipi di canale
Ecco un rapido confronto tra i diversi tipi di canali:
| Type | Push toast? | Eseguire il push di riquadri/badge? | Inviare notifiche non elaborate? | Authentication | API | registrazione dello store obbligatoria? | Channels | Encryption |
|---|---|---|---|---|---|---|---|---|
| Primary | Yes | Sì - solo riquadro principale | Yes | OAuth | WNS REST API | Yes | Uno per app | In transito |
| Riquadro secondario | No | Sì - Solo riquadro secondario | No | OAuth | WNS REST API | Yes | Uno per riquadro secondario | In transito |
| Alternate | No | No | Yes | VAPID | WebPush W3C Standard (Standard del W3C per le notifiche push via web) | No | 1 000 per applicazione | In transito + crittografia end-to-end possibile con pass-through dell'intestazione (richiede il codice dell'applicazione) |
Scelta del canale appropriato
In generale, è consigliabile usare il canale primario nell'app, con alcune eccezioni:
- Se invii un aggiornamento di riquadro a un riquadro secondario, usa il canale push del riquadro secondario.
- Se stai passando canali ad altri servizi, come nel caso di un browser, usa il canale alternativo.
- Se stai creando un'app che non verrà elencata nel Microsoft Store (ad esempio un'app LOB), usa un canale alternativo.
- Se nel tuo server è presente codice push web preesistente che desideri riutilizzare, o se hai bisogno di più canali nel tuo servizio backend, utilizza canali alternativi.
Articoli correlati
- Invia una notifica di tile locale
- Contenuto delle notifiche dell'app
- Avvio rapido: Invio di una notifica push
- Come aggiornare un badge tramite notifiche push
- Come richiedere, creare e salvare un canale di notifica
- Come intercettare le notifiche per l'esecuzione di applicazioni
- Come eseguire l'autenticazione con il servizio di notifica push Windows (WNS)
- Intestazioni per la richiesta e la risposta del servizio di notifica push
- Linee guida ed elenco di controllo per le notifiche push
- Notifiche non elaborate