1

アプリがフォーカスを失ったときに実行する必要があるメソッドがあります。具体的には、ユーザーがスタート メニューに移動するたびにライブ タイルを更新する必要があります。ユーザーが戻るボタンまたはスタートメニューボタンを押すたびに、このメソッドをトリガーするにはどうすればよいですか?

OnSuspending(object sender, SuspendingEventArgs e)メソッドに入れれば動くと思っていたのApp.xaml.csですが、そうではありませんでした!! 私が見つけた終了は、アプリが起動したときですが、それは本当に私が望んでいることではありません.

4

1 に答える 1

2

Suspendingイベントは、探しているものです。

ユーザーがアプリをバックグラウンドに移動すると、OS は数秒間待機して、ユーザーがすぐにアプリに戻るかどうかを確認します。ユーザーが元に戻さない場合、OS はアプリを中断します。

ただし、デバッグ中にアプリをバックグラウンドに送信している間は、このイベントは発生しません。通常は (デバッグなしで) 正常に動作するはずです。このイベントでアクションを実行する時間は限られていることだけを覚えておいてください。また、延期を取得して解放することも忘れないでください。

private async void OnSuspending(object sender, SuspendingEventArgs e)
{
   var deferral = e.SuspendingOperation.GetDeferral();
   // do your code here
   deferral.Complete();
}
于 2014-07-27T07:04:58.653 に答える