C# WP7上的MediaPlayerLauncher-如何恢复以前播放的媒体?
我正在使用MediaPlayerLauncher在我的WP7应用程序中显示MovietRailer,如下所示:C# WP7上的MediaPlayerLauncher-如何恢复以前播放的媒体?,c#,windows-phone-7,media-player,C#,Windows Phone 7,Media Player,我正在使用MediaPlayerLauncher在我的WP7应用程序中显示MovietRailer,如下所示: MediaPlayerLauncher mpl = new MediaPlayerLauncher(); mpl.Media = new Uri(trailerUrl, UriKind.Absolute); mpl.Controls = MediaPlaybackControls.All; mpl.Show(); 这很好,除了一件事:如果用户已经在后台听音乐,并且启动了一个预告片,那
MediaPlayerLauncher mpl = new MediaPlayerLauncher();
mpl.Media = new Uri(trailerUrl, UriKind.Absolute);
mpl.Controls = MediaPlaybackControls.All;
mpl.Show();
这很好,除了一件事:如果用户已经在后台听音乐,并且启动了一个预告片,那么在预告片播放完毕后(或者如果用户关闭了视频),音乐不会恢复
有人知道我如何恢复以前播放的音乐/媒体吗?如果可能的话?通过XNA或“后台音频代理”播放本地媒体 在WP7/WP8中播放媒体时,将获取操作系统音频上下文,而原始上下文将丢失。如果音频是从外部应用程序启动的,则根本无法恢复。如果以前的媒体是从应用程序中启动的,那么您可以存储元数据,并在预告片完成后重新播放。当然,媒体将从一开始就开始播放,而不是从用户停止的地方开始播放。不幸的是,XNA不允许您在给定的媒体中搜索;但是,您可以通过设置player.Position在“audio agent”实例中查找“BackgroundAudioPlayer”。还值得一看MediaHistory API:
var nowPlaying = Microsoft.Devices.MediaHistory.Instance.NowPlaying;
我明白了。在show()之后立即调用MediaPlayer.Resume()可以解决以下问题:
mpl.Media = new Uri(trailerurl, UriKind.Absolute);
mpl.Controls = MediaPlaybackControls.All;
mpl.Show();
MediaPlayer.Resume();
然而,我仍然想知道如何恢复广播和spotify 代表Naumann先生发言时,在后台播放的媒体总是来自
BackgroundAudioAgent
。假设您想在使用此应用程序时(播放音乐时)观看电影。音乐本该停止,但不会再次启动。由于在播放完视频后,MediaPlayerLauncher
不会触发任何事件,因此很难再次启动音乐播放。您知道如何恢复Spotify吗?我也在处理同样的事情。