2014-09-23 52 views
0

在我的应用程序中,我必须使用AudioPlaybackAgent(APA)和mediaelement。我用APA播放歌曲,当我需要播放视频,我使用的MediaElement使用MediaElement会导致错误“背景音频资源不再可用”。

当我浏览到一个页面中使用的MediaElement,我停止BackgroundAudioPlayer:

BackgroundAudioPlayer.Instance.Pause(); 

当我向后导航到需要播放音乐的页面,我打电话给APA重新开始,但现在它返回异常“背景音频资源不再可用”。 :(

protected override void OnNavigatedTo(NavigationEventArgs e) 
    {    
     base.OnNavigatedTo(e); 

     try 
     { 
      if (BackgroundAudioPlayer.Instance.PlayerState != PlayState.Playing) 
       BackgroundAudioPlayer.Instance.Play();     
     } 
     catch 
     { 
      BackgroundAudioPlayer.Instance.Play(); 
     } 
    } 

我可以使用MediaPlayerLauncher,但这种方法有很多disvantage(仅全屏,缺少我的自定义控制的...)。 那么,有没有办法让与沿介质元件工作。AudioPlaybackAgent,或任何其他的方式来播放视频???

+0

你是否确定当你停下来时e BackgroundAudioPlayer BackgroundAudioPlayer上的代码在某处点击'NotifyComplete()'? BackgroundAudioPlayer有时候会非常棘手,我想我也遇到了这个问题。我不认为这与页面导航有关。如果您对此评论有任何疑问,请告诉我。 – Meneses 2014-09-24 09:30:49

回答

0

这是因为网页间导航时的数据丢失可以尝试数据保存到IsolatedStorage 您可以在这个问题上找到更多的信息: Save values between page navigation in Windows Phone

+0

我不认为是因为导航时丢失了数据,我的背景音乐数据(歌曲链接)保存在Isolated Storage中,并自动调用。但是当我关闭它来播放我的媒体元素时,我无法恢复(如果我在停用应用程序然后再次激活应用程序时关闭它,它运行正常) – user3448806 2014-09-24 02:06:52