1

ユーザーがAlt-F4またはスワイプ ジェスチャを使用してアプリケーションを終了したときに、いくつかのクリーンアップ コード (スケジュールされた通知の登録解除など) を実行したいと考えています。WinJS でアプリケーションの終了を処理する方法はありますか? WinJS.Applicationオブジェクトのドキュメントを読みましたが、ユーザーの終了を処理するメソッドが見つかりません。

4

1 に答える 1

5

アプリが閉じられていることを示す特別なイベントはありません。

ユーザーがアプリを閉じたことを示す特別なイベントはありません。ユーザーがアプリを閉じた後、アプリは中断されて終了し、約 10 秒以内にNotRunning状態に入ります。アプリが Suspending のイベント ハンドラーを登録している場合| サスペンドイベント。アプリがサスペンドされたときに呼び出されます。このイベント ハンドラーを使用して、関連するアプリケーションとユーザー データを永続ストレージに保存できます。

そのため、代わりに中断/再開を処理する必要があります。一時停止の処理に関する詳細はこちらにありますが、概要は次のとおりです。

  1. 中断されていることをアプリに通知するチェックポイントイベントに登録します。
  2. そのイベントのイベント ハンドラーに保存する必要があるデータをすべて保存します。
  3. イベントハンドラーでもリソースの解放、通知の中断などを行います。

ApplicationExecutionState再開時に、列挙型を使用してユーザーがアプリを閉じたかどうかを確認できます。イベントが発生した理由を区別する方法がないようでcheckpointあり、唯一のオプションは、発生した理由に関係なくイベントハンドラーに状態を保存することであるため、それはあなたに関連する場合と関連しない場合があります。

追加の一時停止/再開ガイドラインがここにあり、このサンプル アプリが役立つ場合があります。

于 2012-10-01T04:29:15.037 に答える