我想从wp8.1中的app / background任务中取消后台音频任务 - 有没有办法从代码中提取取消?在msdn或其他地方找不到任何东西..
背景为什么我想这样做:
在wp8中,很多用户对系统控制系统始终处于活动状态这一事实并不感到好笑。在wp8.1中也是如此:微软说应该取消后台任务(i)当另一个应用程序想要使用背景音频时,或者(ii)超时后(我想我在某处读取)。因为在我的测试中似乎永远不会发生这种超时取消,我想让用户有可能关闭漏洞应用程序(包括背景音频)。
如果有任何建议,我将不胜感激 最好
答案 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。