Android アプリのログ ファイルを作成したいと考えています。アプリケーションのランダムなクラッシュをデバッグするためにこれが必要です。
未処理の例外が発生した場合に常に呼び出される関数を作成したいと考えています。ログに例外メッセージが必要です。ANDroid でハンドルされていない例外で呼び出されるイベントの種類のメカニズムはありますか?
独自のログ キャットを作成できます。
アプリケーションが実際の Android デバイスにインストールされていて、デバッグの詳細を取得するために Eclipse に接続されていない場合..
チュートリアルを確認してください: Android でプログラムによって Log-cat を読み込んで保存する
また、このスタック オーバーフロー ページも確認してください。解決策のコード スニップと関連する有用な情報を掲載しています。
android Android Acraを使ってみよう
ほんとにいいこと 是非お試しください。
UncaughtExceptionHandler
以下のように使用できます。
public class UncaughtExceptionHandler implements java.lang.Thread.UncaughtExceptionHandler {
String Tag;
Context myContext;
public UncaughtExceptionHandler(Context context, String TAG) {
Tag = TAG;
myContext = context;
}
public void uncaughtException(Thread thread, Throwable exception) {
StringWriter sw = new StringWriter();
exception.printStackTrace(new PrintWriter(sw));
Logger.appendErrorLog(sw.toString(), Tag);
Intent intent = new Intent(myContext, ForceClose.class);
intent.putExtra(BugReportActivity.STACKTRACE, sw.toString());
myContext.startActivity(intent);
Process.killProcess(Process.myPid());
System.exit(10);
}
}
最初のアクティビティのonCreate()
メソッドでこのクラスを呼び出します。
Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler(getApplicationContext(),"FirstActivity"));