2011-07-26 10 views
1

現在、私のアプリのトーンストーン処理を扱っています。私のアプリを削除するには、私は最初のページから2ページ分のアプリケーションに移動します。私はその後、ホームボタンを押し、私は私のアプリに戻って戻るボタンを押した。戻るボタンを押した後、私が見るのは、進行状況バーで「再開」と書かれたページだけです。それはちょうど失速しているようだ。ビジュアルスタジオから起動されていないWindows Phone 7のデバッグ方法

今、私はアプリを起動すると、私はビジュアルスタジオから自分のデバイスに起動します。しかし、私はデバイスのホームボタンを押すとすぐに、ビジュアルスタジオのデバッガが終了します。だから私は私のアプリケーションに戻るボタンを押したとき、私はVisual Studioからデバッグする機会をもう得られません。

ホームボタンを押してもデバッグが停止しないように設定する必要がありますか?

また、私が自分のデバイス上で自分のデバイス上でアプリケーションリストを表示しようとすると、私のアプリはデフォルトのスプラッシュ画面イメージで停止します。だから間違いなく間違っている。

デバッグ用のビジュアルスタジオにデバッガを接続できるデバイスがプロセスに関連付けられていますか?または私はいつもデバッグのためにビジュアルスタジオからアプリケーションを起動する必要がありますか?

tombstoningを処理する方法のサンプルコードは次のとおりです。

protected override void OnNavigatingFrom(NavigatingCancelEventArgs e) 
{ 
if(NavigationMode.Back != e.NavigationMode) 
{ 
    try 
    { 
    PhoneApplicationService.Current.State["token"] = myMvvM; 
    } 
    catch(Exception ex) 
    { 
    Debug.WriteLine(ex.ToString()); 
    } 
} 
} 

現在、私はApp.xaml.cs.でApplication_UnhandledExceptionに何もしません。コードは生成されたままになります(ただし、ログを表示するにはDebug.WriteLineのみ表示されます)。

private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e) 
{ 
//break point is placed on line right below this comment line 
Debug.WriteLine("unhandled exception sender type = " + 
    sender.GetType().FullName + ", ex = " + e.ToString()); 

if (System.Diagnostics.Debugger.IsAttached) 
{ 
    // An unhandled exception has occurred; break into the debugger 
    System.Diagnostics.Debugger.Break(); 
} 
} 

答えて

2

デバッグモードで実行している場合、例外が発生しない限り、自宅をクリックしても終了しません。あなたがアプリケーションを終了すると、それは終了するだけです。最初の画面から戻る。

しかし、あなたのトゥームストーンロジックが例外をスローしているように思えます。あなたはそれをキャッチしていません。 Application.UnhandledExceptionイベントのハンドラを実装しましたか? (Visual Studio用のデフォルトのApp.xaml.csテンプレートで実装されています)

+0

私はこの行を参照して、ifがデバッガを強制的に中断させるようにします。私はその行をコメントしました。また、引数(オブジェクト送信者、ApplicationUnhandledExceptionEventArgs e)を記録するDebug.WriteLineステートメントを追加しました。 「奇妙なこと」は、私がその行のコメントを外すと、私はもはや上で観察された問題を取得しないということです。私はこの問題が断続的であり、再現するのが難しいと思う。 – jake

+0

標準的な実装は、Debug.Breakを使用して中断するため、エラーの原因となった例外を含むApplicationUnhandledExceptionEventArgsを分析できるようになります。 https://bitbucket.org/Windcape/goto-con/src/a5c9be4219b6/GotoCon/App.xaml.cs#cl-66 –

+0

あなたはそれを扱わないので、まさにデバッグ情報が得られないのでしょう。そして、これはまた、あなたの墓石コードが失敗していることを証明します。おそらく、シリアライゼーションエラーが原因です。 –

関連する問題