Поделиться через


Настраиваемый звук в уведомлениях приложений

Уведомления приложений могут использовать пользовательский звук, который позволяет приложению выразить уникальные звуковые эффекты вашего бренда. Например, приложение обмена сообщениями может использовать собственный звук обмена сообщениями в уведомлениях приложения, чтобы пользователь мгновенно знал, что он получил уведомление от приложения, а не услышит универсальный звук уведомления.

Установка пакета NuGet UWP Community Toolkit

Чтобы создавать уведомления с помощью кода, настоятельно рекомендуется использовать библиотеку уведомлений средств сообщества UWP, которая предоставляет объектную модель для содержимого XML уведомления. Вы можете вручную создать XML-код уведомления, но это подвержено ошибкам и беспорядочно. Библиотека уведомлений в средстве сообщества UWP создана и поддерживается командой, которая владеет уведомлениями в Корпорации Майкрософт.

Установите Microsoft.Toolkit.Uwp.Notifications из NuGet.

Добавление объявлений пространства имен

using Microsoft.Toolkit.Uwp.Notifications;

Добавление пользовательского звука

Windows Mobile всегда поддерживает пользовательский звук в уведомлениях Toast. Тем не менее, в версии 1511 (сборка 10586) Desktop добавил поддержку только для пользовательского звука. Если вы отправляете всплывающее сообщение с пользовательским звуком на настольное устройство до версии 1511, то всплывающее уведомление будет без звука. Таким образом, для настольной версии до версии 1511, не следует включать настраиваемый звук в тостовое уведомление, так как уведомление хотя бы будет использовать звук уведомления по умолчанию.

известная проблема: Если вы используете настольную версию 1511, пользовательский звук тост-уведомления будет работать только в том случае, если ваше приложение установлено через магазин. Это означает, что вы не можете локально протестировать пользовательский звук на рабочем столе перед отправкой в Магазин, но звук будет работать нормально после установки из Магазина. Мы исправили это в юбилейном обновлении, чтобы пользовательский звук из локально развернутого приложения работал правильно.

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

Поддерживаемые типы звуковых файлов включают:

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

Поддерживаемые источники аудиофайла:

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

Не поддерживаемые источники аудиофайла:

  • ms-appdata
  • http://, https://
  • C:/, F:/и т. д.

Отправка уведомления

Отправка уведомления со звуком совпадает с отправкой регулярного уведомления (просто вызов метода Show). Узнайте больше, отправив локальное уведомление с помощью .