Compartilhar via


Áudio personalizado em notificações do sistema

As notificações do sistema podem usar áudio personalizado, o que permite que seu aplicativo expresse os efeitos sonoros exclusivos da sua marca. Por exemplo, um aplicativo de mensagens pode usar seu próprio som de mensagens em suas notificações do sistema, para que o usuário possa saber instantaneamente que recebeu uma notificação do aplicativo, em vez de ouvir o som de notificação genérico.

Instalar o pacote NuGet do Kit de Ferramentas da Comunidade UWP

Para criar notificações por meio de código, é altamente recomendável usar a biblioteca de Notificações do Kit de Ferramentas da Comunidade UWP, que fornece um modelo de objeto para o conteúdo XML de notificação. Você pode construir manualmente o XML de notificação, mas isso é propenso a erros e confuso. A biblioteca de notificações dentro do UWP Community Toolkit é criada e mantida pela equipe proprietária das notificações na Microsoft.

Instale Microsoft.Toolkit.Uwp.Notifications do NuGet.

Adicionar declarações do namespace

using Microsoft.Toolkit.Uwp.Notifications;

Adicionar o áudio personalizado

O Windows Mobile sempre deu suporte a áudio personalizado em notificações do sistema. No entanto, o Desktop só adicionou suporte para áudio personalizado na versão 1511 (build 10586). Se você enviar uma notificação do sistema que contenha áudio personalizado para um dispositivo Desktop anterior à versão 1511, a notificação do sistema será silenciosa. Portanto, para a versão 1511 da área de trabalho, você NÃO deve incluir o áudio personalizado na notificação do sistema, para que a notificação use pelo menos o som de notificação padrão.

Problema conhecido: se você estiver usando a versão 1511 da área de trabalho, o áudio da notificação do sistema personalizado só funcionará se o aplicativo estiver instalado por meio da Loja. Isso significa que você não pode testar localmente seu áudio personalizado na área de trabalho antes de enviar para a Loja, mas o áudio funcionará bem depois de instalado na Loja. Corrigimos isso na Atualização de Aniversário, para que o áudio personalizado do seu aplicativo implantado localmente funcione corretamente.

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

Os tipos de arquivo de áudio suportados incluem:

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

Fontes de arquivo de áudio suportadas:

  • ms-appx:///
  • ms-recurso

Fontes de arquivo de áudio não suportadas:

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

Enviar a notificação

Enviar uma notificação com áudio é o mesmo que enviar uma notificação normal (basta chamar o método Show). Consulte Enviar notificação do sistema local para saber mais.