0

Windows Phone 7.1 アプリケーションのライフ サイクルについてこれまでにわかっていることは以上ですが、まだいくつか質問があります。

アプリケーションの起動 - アプリケーションの起動時に呼び出され、App の初期化、次に MainPage の初期化に進みます。

Applicaiton Deactivated - アプリが休止状態になったときに呼び出されます (実行中ですが、ユーザーは使用していません)。これは、App クラスの ApplicationDeactivated メソッドに移動する前に、現在のページの OnNavigatedFrom メソッドを呼び出します。アプリケーションが休止状態になると、オペレーティング システムがより多くのメモリを必要とする場合、廃棄状態になる可能性があります。

Application Activated - アプリが Dormant または Tombstoned 状態から抜け出したときに呼び出されます。IsApplicationInstancePreserved を呼び出してどちらを確認できます (true は Dormant を意味するため、状態は保持されました)。これが呼び出されると、OnNavigatedTo に移動します。

Applicaiton Closing - ユーザーが最初のページを過ぎて後方に移動し、アプリが終了したときに呼び出されます。OnNavigatedFrom メソッド (最初のページ) も呼び出されます。

したがって、私の質問は主に、ApplicationActivated メソッドが呼び出されたときに初期化されるものに関するものです。

- アプリケーションが廃棄されていない場合、アプリケーションを初期化するために何かする必要がありますか? または、オペレーティング システムはすべてを以前の状態に復元しますか? コンストラクターは、ナビゲートしているページに対しても呼び出されていますか、それともすべてが凍結されていましたか?

- アプリケーションが廃棄された場合、ページ コンストラクターは呼び出されますか? (何も保存されていないので、そう仮定しています)。ページ コンストラクターが呼び出された場合、このページに初めて移動する場合と廃棄状態から戻ってくる場合に違いはありますか?

4

2 に答える 2

2

これらはすべて、自分でテストできるものです。アプリケーション プロジェクトのプロパティで、アプリケーションから離れたときに廃棄を有効にすることができます。この設定は [デバッグ] タブにあります。

于 2012-06-21T23:28:07.527 に答える
1

Correct me if I'm wrong but here are the answers to the questions I posed.

-When the application gets activated and it hasn't been tombstoned then only the OnNavigatingTo method of the last page gets called (no page constructors). I don't believe there is anything you need to do in this case since the application state has been saved.

-When the application gets tombstoned you need to save any page data that you might need to reload since everything on the page is lost and when it becomes activated again the page constructor IS called before the OnNavigatedTo method.

Hope this helps anyone in the future with similar questions....

于 2012-06-26T01:54:29.453 に答える