투케이2K

41. (TWOK/LOGIC) [Android] App Crash Report Log : 앱 크래시 발생 시 리포트 로그 자동 저장 로직 본문

투케이2K 로직정리

41. (TWOK/LOGIC) [Android] App Crash Report Log : 앱 크래시 발생 시 리포트 로그 자동 저장 로직

투케이2K 2023. 11. 27. 19:10

[로직 정리]

정리 로직 : Android

상태 : [Android] App Crash Report Log : 앱 크래시 발생 시 리포트 로그 자동 저장 로직

 

[설 명]

 

[1] : 앱 실행 라이프 사이클 관리 Application 클래스에서 ActivityLifecycleCallbacks 상속 받은 후 액티비티 라이프 사이클 확인


[2] : Application 클래스에서 onActivityCreated 액티비티 생성 라이프 사이클이 수행 된 경우 
     UncaughtException 알 수 없는 에러 발생 핸들러 감지 등록 : Thread.setDefaultUncaughtExceptionHandler(new S_Crash(activity));

  >> S_Crash 클래스에서는 Thread.UncaughtExceptionHandler 상속 받은 후 앱 크래시 발생 시 자동 파일 저장 기능 구현 필요


[3] : S_Crash 앱 크래시 리포트 저장 클래스에서 사전) 파일 저장 권한 부여 체크 실시
  >> 파일 저장 권한은 로딩 및 로그인 최초 액티비티 화면에서 사용자로부터 획득 필요


[4] : S_Crash 앱 크래시 리포트 저장 클래스에서 파일 저장 권한이 부여된 경우 자동 크래시 리포트 저장 실시
  >> 크래시 리포트 로그 저장 시 기본 작성 정보 : 앱 버전, OS 버전, 크래시 발생 일자, printStackTrace 전체 로그
  >> printStackTrace 전체 로그 : StringWriter 를 사용해 전체 에러 로그 String 변환 수행
  >> 파일 저장 : new File 사용해 특정 디렉토리 및 파일명을 사용해 저장 수행


[5] : try {} catch(){} 구문 없이 강제 에러 발생을 수행해 앱 크래시 리포트가 자동 저장되는 것을 확인

 

반응형
Comments