2011-08-02 6 views
0

Androidプログラミングでは、アプリケーションに強制終了が発生したときに「ログデータ」をファイルに記録する方法を理解したいと思います。 私の現在の要件は、アプリの強制終了時です。ログデータは、ユーザーがアプリケーションを再び使用するときにアプリケーションから送信される可能性のあるファイル(電子メールの意図を使用)に書き込まれる必要があります。私は強制終了時に呼び出される可能性のあるイベントやメソッドを理解できません。アプリケーションがクラッシュし、アプリケーションコードから外れています。 サンプルプログラムは大歓迎です。Androidのキャプチャアプリケーションが強制終了されたときにアプリケーション内のファイルにログインする

答えて

2

あなたの最善の策は、try/catchのエラーをキャッチして、エラーにLog.getStackTraceStringを使用することです。このすべての情報を得ることをご存じですかthrough the Market、右?

+0

Androidマーケットを使用していません。実際には、ログトレースファイルを作成しようとしていたので、ユーザーがログトレースファイルを電子メールで送信できるようにしました。 – user874353

+0

オープンソースソリューションのようです:http://code.google.com/p/android-log-collector/ – Paddy

1

クラッシュログを確認するだけで、これは固有の動作ではなく、既存のインフラストラクチャを使用すると仮定します。

私はテスト段階にない限り、あなたがそれをしてはいけないと信じています。 Androidマーケットはユーザーに強制終了を報告し、実際のログを送信します。テスト段階では、テスターに​​ログファイルを送信するアプリケーションを使用して、市場で検索してもらうよう依頼することができます。

1

アプリケーションが最初に起動するときに、キャッチされない例外ハンドラを登録しようとすると、このメソッドはコード内にエフェクトがあるときは常に呼び出されます。

Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { 

      @Override 
      public void uncaughtException(Thread thread, Throwable ex) { 

       Log.e("UNCAUGHT EXCEPTION", thread.toString()); 
       Log.e("UNCAUGHT EXCEPTION", ex); 
       } 
     }); 
+0

ありがとう、これを試してみよう – user874353

+0

これを呼び出す前に、Androidのハンドラを呼び出すことを忘れないでくださいgetDefaultUncaughtExceptionHandlerを呼び出し、例外をファイルに記録した後に、uncaughtExceptionからその例外を呼び出すようにしてください。それ以外の場合、アプリはフリーズします。 –

関連する問題