WP8.1如何在C#中取消后台音频任务

时间:2014-07-03 18:59:40

标签: c# windows-phone-8.1 background-task

我想从wp8.1中的app / background任务中取消后台音频任务 - 有没有办法从代码中提取取消?在msdn或其他地方找不到任何东西..

背景为什么我想这样做:
在wp8中,很多用户对系统控制系统始终处于活动状态这一事实并不感到好笑。在wp8.1中也是如此:微软说应该取消后台任务(i)当另一个应用程序想要使用背景音频时,或者(ii)超时后(我想我在某处读取)。因为在我的测试中似乎永远不会发生这种超时取消,我想让用户有可能关闭漏洞应用程序(包括背景音频)。

如果有任何建议,我将不胜感激 最好

2 个答案:

答案 0 :(得分:2)

至于BackgroundMediaPlayer,您可以拨打BackgroundMediaPlayer.Shutdown,因为它是here at MSDN

  

BackgroundMediaPlayer.Shutdown关闭媒体管道并从内存中释放MediaPlayer对象。如果在调用Shutdown后再次尝试访问BackgroundMediaPlayer.Current的引用,则会出现错误。关闭意味着应用程序在其任务被取消时清理媒体管道。

所以请记住从Foreground-Background通信中分离所有处理程序并禁止调用 BackgroundMediaPlayer.Current ,因为它将再次启动它。

答案 1 :(得分:0)

处理取消的典型方法是通过传递CancellationToken。有关详细信息,请参阅MSDN上的Cancellation in Managed Threads