2013-04-12 22 views
7

私はアプリケーションにデフォルトのハンドラを追加しようとしているので、未処理の例外からリカバリできます。MonoDroid:未処理例外リカバリ

Android/MonoDroidが提供する3つのメカニズムがわかりましたが、私が知る限り、これを可能にする必要がありますが、それらのいずれかを動作させることはできません。ここに私のコード:

ありがとう、ありがとう!

+0

これはこれまでに実現しましたか?アプリケーションをデバッグしないときに同様の問題が発生しています。 AppDomainが実行される前に 'AndroidEnvironment'が呼び出され、キャッチされない例外を処理することができます。 –

+0

これは、 "Handled flag = true"を設定する方法ではなく、 'e.Handled = true;' ... :: B –

答えて

0

ほとんどの例外は、AppDomain.CurrentDomain.UnhandledExceptionイベントで捕捉できます。しかし、次の理由により、このデリゲートでAlertDialogを呼び出すことはできません。 1.アプリケーションがクラッシュしました。 2.少なくともUnhandledExceptionイベントが呼び出されています。 3. alert.Show()は非同期(UIスレッド)で実行されます

したがって、同期操作(System.IOなど)を使用する必要があります。非同期であるため、ネイティブUI操作を使用しないでください。