2013-06-14 1 views
0

내 앱에서 충돌을 추적하고있는 android 라이브러리에서 작업 중입니다.다른 함수의 예외 객체에서 스택 트레이스 가져 오기

예외가 발생하는 테스트 응용 프로그램이 있는데,이 예외는 내 라이브러리에 전달됩니다. 내가해야 할 일은이 예외에 대한 stacktrace를 얻는 것이다.

다음은이 함수를 호출하는 방법입니다.

여기서 예외 추적 정보를 얻는 곳에서 스택 트레이스가 필요한 기능입니다.

public static void ReportCrash(Object exceptionObject) 
    { 
     String exceptionType = exceptionObject.getClass().getName(); 
     Log.d("Exception Type", exceptionType); 
     Log.d("Device Name", android.os.Build.MODEL); 
     Log.d("Device Brand", android.os.Build.BRAND); 
     Log.d("Android API Level", String.valueOf(android.os.Build.VERSION.SDK_INT)); 
     Log.d("Android Name", CommonTasks.convertApiLevelToAndroidName(android.os.Build.VERSION.SDK_INT)); 
     Log.d("Screen Resolution", CritiMon.appContext.getResources().getDisplayMetrics().widthPixels + " x " + CritiMon.appContext.getResources().getDisplayMetrics().heightPixels); 
     Log.d("Exception", exceptionObject.toString()); 

    } 

답변

1
for (StackTraceElement element : exceptionObject.getStackTrace()) { 
    Log.d("Exception", element.toString()); 
} 

그리고 하나 Exception를 입력 exceptionObject을 변경하거나 getStackTrace()을 위해 그것을 캐스팅.

관련 문제