開始画面以外では Back ボタンでアプリケーションを終了させるべきではない

#wp7dev_jp

昨日、QAに対する回答として「Back ボタンでアプリケーションを終了させる」をという記事を書きましたが。

ただしこの方法は基本的には使わないでください。 本来のWindows Phone の操作のガイドラインからある意味外れる処理になります。この方法を多用することはユーザーを混乱させることになります。この方法を使うよりも、アプリケーションのナビゲーションの導線をきちんと設計し直して、いつでもちゃんとはじめの画面に戻って終了できるようなナビゲーションにするべきです。

通常の作り方をしていれば、Windows Phone アプリケーションは数回←ボタンを押していれば必ず完了します。むしろそのような動きになるように、設計すべきです。よくありがちですが、ナビゲーションがループしないようきちんと設計することを心がけてください。ループしてしまう場合、ホームに戻った場合に NavigationService.RemoveBackEntry でナビゲーションの履歴を証書することもできますが、逆にこれはユーザーが「←ボタンを押して前のページに戻ることができる」というルールを破ることになります。

あくまでもExceptionによる終了はどうしても強制終了が必要な場合にのみ、UI上の操作から使用し、←ボタンの操作からは極力使用しないようにするべきです。また使用する際には、かならず強制終了することをユーザーに確認してから行うことも重要です。

Windows Phone らしい アプリケーション設計を心がけましょう。