2012-12-28 3 views
2

Android 앱의 로그 파일을 만들고 싶습니다. 응용 프로그램의 임의의 충돌을 디버깅하려면이 필요합니다.Android 앱 로그 파일 만들기

처리되지 않은 예외가있는 경우 항상 호출되는 함수를 만들고 싶습니다. 로그에 예외 메시지가 필요합니다. ANdroid에서 처리되지 않은 예외에 대해 호출 될 이벤트 종류 메커니즘이 있습니까? 이것을 시도하십시오

+0

왜 로그 캣 출력이 충분하지 않습니다를? – Henry

+0

@Henry 앱이 장치에 설치 될 것입니다. 로그가 sdcard에 저장되어 추락 한 이유를 해결하려고합니다. – Jaguar

+0

장치가 USB를 통해 PC에 연결되면이 정보를 얻을 수 있습니다. 충돌 직후에 장치를 연결하는 경우에도 작동합니다. – Henry

답변

2

당신은 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")); 
2

안드로이드 Android Acra

정말 좋은 일을 사용하려고합니다. 당신은 당신의 자신의 로그 고양이를 작성할 수

+0

감사합니다. acra는 훌륭하지만 코드를 작성하고 싶습니다. 제발 도와 줄 수있어? – Jaguar

2

,

응용 프로그램이 실제 안드로이드 장치에 설치 및 디버깅 정보를 얻기 위해 Eclipse에 연결되어 있지 않은

...

확인하시기 바랍니다 자습서 : Read & Store Log-cat Programmatically in Android

this 스택 오버플로 페이지를 확인하고 싶습니다. 솔루션 코드 스 니프 및 관련 유용한 정보를 게시했습니다. 아래 그림과 같이