Freigeben über


Benutzerdefiniertes Audio für Popups

Popupbenachrichtigungen können benutzerdefinierte Audiodaten verwenden, wodurch Ihre App die einzigartigen Soundeffekte Ihrer Marke ausdrücken kann. Beispielsweise kann eine Messaging-App ihren eigenen Messaging-Sound in ihren Popupbenachrichtigungen verwenden, damit der Benutzer sofort wissen kann, dass er eine Benachrichtigung von der App empfangen hat, anstatt den generischen Benachrichtigungssound zu hören.

Installieren des UWP Community Toolkit NuGet-Pakets

Um Benachrichtigungen über Code zu erstellen, empfehlen wir dringend die Verwendung der UWP Community Toolkit Notifications-Bibliothek, die ein Objektmodell für den XML-Inhalt der Benachrichtigung bereitstellt. Sie könnten die Benachrichtigungs-XML manuell erstellen, das ist jedoch fehleranfällig und unübersichtlich. Die Benachrichtigungsbibliothek im UWP Community Toolkit wird vom Team erstellt und verwaltet, das Benachrichtigungen bei Microsoft besitzt.

Installieren Sie Microsoft.Toolkit.Uwp.Notifications von NuGet.

Hinzufügen von Namespace-Deklarationen

using Microsoft.Toolkit.Uwp.Notifications;

Hinzufügen des benutzerdefinierten Audios

Windows Mobile unterstützt immer benutzerdefinierte Audio in Popupbenachrichtigungen. Desktop hat jedoch nur Unterstützung für benutzerdefinierte Audio in Version 1511 (Build 10586) hinzugefügt. Wenn Sie ein Popup senden, das benutzerdefinierte Audiodaten vor Version 1511 an ein Desktopgerät enthält, wird das Popup automatisch angezeigt. Daher sollten Sie für Desktop pre-Version 1511 nicht die benutzerdefinierte Audiodaten in die Popupbenachrichtigung einschließen, damit die Benachrichtigung zumindest den Standardbenachrichtigungssound verwendet.

Bekanntes Problem: Wenn Sie DesktopVersion 1511 verwenden, funktioniert das benutzerdefinierte Popupaudio nur, wenn Ihre App über den Store installiert ist. Dies bedeutet, dass Sie Ihre benutzerdefinierten Audiodaten nicht lokal auf Desktop testen können, bevor Sie an den Store übermitteln . Die Audiodaten funktionieren jedoch nach der Installation aus dem Store einwandfrei. Dies wurde im Anniversary Update behoben, sodass benutzerdefinierte Audiodaten aus Ihrer lokal bereitgestellten App ordnungsgemäß funktionieren.

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();

Zu den unterstützten Audiodateitypen gehören:

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

Unterstützte Audiodateiquellen:

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

Nicht unterstützte Audiodateiquellen:

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

Senden der Benachrichtigung

Das Senden einer Benachrichtigung mit Audio ist identisch mit dem Senden einer regulären Benachrichtigung (rufen Sie einfach die Show-Methode auf). Weitere Informationen finden Sie unter "Lokales Popup senden".