3

wp8.1 でアプリ/バックグラウンド タスクからバックグラウンド オーディオ タスクをキャンセルしたい - コードからキャンセルを発生させる方法はありますか? msdnや他の場所で何も見つかりません..

なぜ私はそれをしたいのか背景:
wp8 では、多くのユーザーは、systemmediacontrols が常にアクティブであるという事実についてあまり面白くありませんでした。wp8.1でも同じ:Microsoftは、(i)別のアプリがバックグラウンドオーディオを使用したい場合、または(ii)タイムアウト後にバックグラウンドタスクをキャンセルする必要があると述べています(どこかで読んだと思います)。私のテストでは、このタイムアウトのキャンセルは決して起こらないように見えるので、ユーザーがホール アプリをシャットダウンできるようにしたいと思います (バックグラウンド オーディオを含む)。

私はどんな提案にも感謝します。
一番

4

2 に答える 2

2

BackgroundMediaPlayerについては、 MSDN でここに記載されているように、BackgroundMediaPlayer.Shutdown呼び出すことができます。

BackgroundMediaPlayer.Shutdown はメディア パイプラインを閉じ、MediaPlayer オブジェクトをメモリから解放します。Shutdown を呼び出した後で、BackgroundMediaPlayer.Current への参照に再度アクセスしようとすると、エラーが発生します。シャットダウンは、タスクがキャンセルされたときにアプリがメディア パイプラインをクリーンアップするためのものです。

そのため、すべてのハンドラーを Foreground-Background 通信から切り離し、BackgroundMediaPlayer.Current の呼び出しを抑制することを忘れないでくださいこれにより、再び開始されます。

于 2014-07-03T19:13:26.763 に答える
0

キャンセルを処理する一般的な方法は、CancellationToken. 詳細については、MSDNの「マネージ スレッドでのキャンセル」を参照してください。

于 2014-07-03T19:03:04.093 に答える