通知用户播放声音 Windows Phone 8 并停止当前音乐


在我的 Windows Phone

7 和 7.5 应用程序中,如果用户已经在播放音乐,我曾经在应用程序启动时提示一个消息框,通知用户停止当前音乐播放声音或退出应用程序,这是有效的,但是当我从头开始为 Windows Phone 8 编码时, 由于某种原因,此代码不起作用,如果您正在播放声音,而不是提示通知,应用程序会自行打开和关闭。

这是我使用的代码:

private void Application_Launching(object sender, LaunchingEventArgs e)
    {
        FrameworkDispatcher.Update();
        if (MediaPlayer.GameHasControl != true)
        {
            if (MessageBox.Show("This application requires play sounds and stop your     currently playlist", "Information",
                MessageBoxButton.OK) == MessageBoxResult.OK)
            {
                MediaPlayer.Stop();
                FrameworkDispatcher.Update();
            }
        }
    }

我很确定媒体播放器的 API 一定有一些变化?我找不到任何相关信息,有人知道我该如何解决这个问题?

谢谢!!!

正如您所猜测的,API 中有一些变化。

我注意到的第一件事,从Application_Launching事件调用MessageBox.Show(string)会导致异常。你的应用可能由于未处理的异常而关闭。

来自 MSDN:"如果从应用"已激活"和"启动"事件处理程序调用 Show(String) 方法,则会引发 InvalidOperationException,并显示消息"显示消息框时出错"。

编辑:MSDN上的文档不清楚是否调用.Show(string, string, messageBoxButton) 引发相同的异常。

适用于 Windows Phone 的应用平台兼容性

相关内容

最新更新