在wp8.1 rt中播放应用程序的通知音

本文关键字:应用程序 通知 知音 播放 wp8 rt | 更新日期: 2023-09-27 18:12:23

我们有一个要求,我们需要在收到消息时在应用程序内播放通知音。

对于这个,如果一首歌正在后台播放并且通知出现,那么行为应该是:

    背景歌曲/音频应该暂停。
  1. 通知音应该得到了。
  2. 背景歌曲应该从原来的地方恢复暂停。

但是我通过以下链接通过应用程序播放音频文件:

1) http://www.jayway.com/2014/04/24/windows-phone-8-1-for-developers-the-background-media-player/这将停止背景音乐。

http://blogs.msdn.com/b/johnkenn/archive/2013/12/31/supporting-background-audio-in-your-windows-8-1-app.aspx

2)

3) https://msdn.microsoft.com/en-us/library/windows/apps/xaml/windows.media.systemmediatransportcontrols.aspx

但是这些都没有达到我的目的。

在wp8中,我们可以这样做。

任何实现所需功能的方向?

在wp8.1 rt中播放应用程序的通知音

如果你在用户收到消息时向他们发送toast通知,请在通知有效载荷中包含自定义声音,包括audio标签:

    <toast launch='"$param'">
       <audio src='"ms-appx:///Assets/Sounds/$sound.wav'"/>
       <visual>
           <binding template='"ToastText02'">
               <text id='"1'">$title</text>
               <text id='"2'">$msg</text>
           </binding>
       </visual>
    </toast>

要使自定义声音工作,您需要在项目中包含sound.wav,并且可以指定路径。我把它放在我的Assets/Sounds/文件夹,你可以指定其他东西。

当你收到消息时,你也可以尝试在你的应用程序中用声音发送祝酒词:

var notificationContent = "...xml...";
var xmlDocument = new XmlDocument();
xmlDocument.LoadXml(notificationContent);
var toastNotification = new ToastNotification(xmlDocument);
toastNotification.SuppressPopup = true;
ToastNotificationManager.CreateToastNotifier().Show(toastNotification);

其中notificationContent与上述XML格式相同,只是转义了。