两个应用程序之间的声音交互

Posted

技术标签:

【中文标题】两个应用程序之间的声音交互【英文标题】:Sound interaction between two applications 【发布时间】:2014-06-23 10:08:56 【问题描述】:

我已经构建了一个带有视频播放器的 Windows Phone 应用程序,用于在启动时显示徽标动画。 如果我启动带有背景音频(例如歌曲)的外部应用程序(如 Spotify),然后切换到我的应用程序,即使我的徽标动画甚至没有音频,歌曲也会停止(可能是因为我的徽标动画)。

我为徽标动画使用了 MediaElement:

<MediaElement AutoPlay="False" Name="media" Source="Assets/video.mp4"/>

在后面的代码中,我使用media.play(); 来启动徽标动画。

有没有办法避免停止其他应用程序的声音?

【问题讨论】:

我对这个问题有点困惑。如果我是正确的,您是否将播放器放在启动画面中? 不,这是一个假的闪屏,在显示主屏幕之前会显示徽标动画。 那么你的MediaElement 在哪里?你遇到了什么问题? 加载的第一页只是带有MediaElement(徽标动画)的PhoneApplicationPage。动画完成后,将加载主屏幕。问题是在播放徽标动画时,音频背景(来自其他应用程序)会停止。 所以您的意思是与徽标动画集成的音频不起作用?你可以发布你的代码吗?您在上面发布的MediaElement 是否正常工作? 【参考方案1】:

来自MSDN:

当 MediaElement 控件播放音频或视频内容时,任何 背景声音或已播放的媒体已停止。 应用 当用户点击控件时启动播放体验。仅有的 一次可以操作一个 MediaElement 控件。

这对您意味着,如果您希望背景音频正常运行,您需要重新设计徽标以通过 XAML 动画或除 MediaElement 之外的其他方式运行。根据您的动画的来源,这对您来说可能很简单,也可能超出您的范围。您必须自己确定背景音频(Pandora、Spotify、Podcast 等)的好处是否超过所需的工作。

话虽如此,我已经使用了大量(在我的测试中可能有 20%)应用程序在您每次输入时都会取消背景音频,这非常令人沮丧。我认为大多数用户都希望您修复您的应用程序,以免背景音频中断。

【讨论】:

以上是关于两个应用程序之间的声音交互的主要内容,如果未能解决你的问题,请参考以下文章

聊天应用程序 - 测试两个客户端之间的交互

如何在两个安卓应用程序之间创建交互

每当用户与屏幕交互时播放触摸声音

两个应用之间交互怎样才算做健壮

如何在耳机的两个芽之间切换音频输出

Winform两个EXE之间的交互功能怎么做