Audio personalizzato per gli avvisi popup

Le notifiche di tipo avviso popup possono usare audio personalizzato, che consente all'app di esprimere effetti audio unici del marchio. Ad esempio, un'app di messaggistica può usare il proprio suono di messaggistica nelle notifiche di tipo avviso popup, in modo che l'utente possa immediatamente sapere che ha ricevuto una notifica dall'app, invece di ascoltare il suono di notifica generico.

Installazione del pacchetto NuGet UWP Community Toolkit

Per creare notifiche tramite codice, raccomandiamo di usare la libreria di notifiche UWP Community Toolkit, che fornisce un modello a oggetti per il contenuto XML delle notifiche. Puoi costruire manualmente il codice XML di notifica, ma questo è soggetto a errori e disordinato. La libreria notifications all'interno di UWP Community Toolkit viene compilata e gestita dal team proprietario delle notifiche in Microsoft.

Installa Microsoft.Toolkit.Uwp.Notifications da NuGet.

Aggiungere le dichiarazioni dello spazio dei nomi

using Microsoft.Toolkit.Uwp.Notifications;

Aggiunta dell'audio personalizzato

Windows Mobile ha sempre supportato l'audio personalizzato nelle notifiche di tipo avviso popup. Tuttavia, desktop ha aggiunto solo il supporto per l'audio personalizzato nella versione 1511 (build 10586). Se invii un avviso popup che contiene audio personalizzato a un dispositivo Desktop prima della versione 1511, l'avviso popup sarà invisibile all'utente. Pertanto, per desktop versione 1511, non è consigliabile includere l'audio personalizzato nella notifica di tipo avviso popup, in modo che la notifica usi almeno il suono di notifica predefinito.

Problema noto: se usi desktop versione 1511, l'audio di tipo avviso popup personalizzato funzionerà solo se l'app è installata tramite lo Store. Ciò significa che non puoi testare localmente l'audio personalizzato sul desktop prima di inviarlo allo Store, ma l'audio funzionerà correttamente una volta installato dallo Store. È stato risolto questo problema nell'aggiornamento dell'anniversario, in modo che l'audio personalizzato dell'app distribuita localmente funzioni correttamente.

var contentBuilder = new ToastContentBuilder()
    .AddText("New message");

    
bool supportsCustomAudio = true;
 
// If we're running on Desktop before Version 1511, do NOT include custom audio
// since it was not supported until Version 1511, and would result in a silent toast.
if (AnalyticsInfo.VersionInfo.DeviceFamily.Equals("Windows.Desktop")
    && !ApiInformation.IsApiContractPresent("Windows.Foundation.UniversalApiContract", 2))
{
    supportsCustomAudio = false;
}
 
if (supportsCustomAudio)
{
    contentBuilder.AddAudio(new Uri("ms-appx:///Assets/Audio/CustomToastAudio.m4a"));
}

// Send the toast
contentBuilder.Show();

Alcuni tipi di file audio supportati sono:

  • .aac
  • .flac
  • .m4a
  • mp3
  • .wav
  • wma

Origini file audio supportate:

  • ms-appx:///
  • ms-resource

Origini file audio non supportate:

  • ms-appdata
  • http://, https://
  • C:/, F:/, ecc.

Invio della notifica

L'invio di una notifica con audio equivale all'invio di una notifica regolare (basta chiamare il metodo Show). Per ulteriori informazioni, vedi setContextProvider.