투케이2K

59. (TWOK/LOGIC) [Mobile] 모바일 (Android) 안드로이드 UncaughtExcept 비정상 종료 크래시 발생 버그 리포트 제공 로직 본문

투케이2K 로직정리

59. (TWOK/LOGIC) [Mobile] 모바일 (Android) 안드로이드 UncaughtExcept 비정상 종료 크래시 발생 버그 리포트 제공 로직

투케이2K 2024. 7. 20. 09:14

[로직 정리]

정리 로직 : Mobile

상태 : [Mobile] 모바일 (Android) 안드로이드 UncaughtExcept 비정상 종료 크래시 발생 버그 리포트 제공 로직

 

[설 명]

1. class S_Crash implements Thread.UncaughtExceptionHandler : 스레드 상속 클래스 생성 실시

  >> 클래스 uncaughtException 메소드 부분에서 에러 발생이 감지 된 경우 앱 내부 파일에 크래시 파일 저장

  >> public void uncaughtException(Thread t, Throwable e) 부분에서 크래시 파일 저장

  >> 앱 내부 저장소는 특별한 접근 권한 없이 파일 읽기 쓰기 가능 (단, 애플리케이션 캐시 및 데이터 삭제 수행 시 데이터 사라짐)



2. A_Application 애플리케이션에서 각 액티비티 라이프 사이클 시작 감지 (onActivityCreated) 부분에서 크래시 메소드 동작 수행

  >> Thread.setDefaultUncaughtExceptionHandler(new S_Crash(activity));


3. 앱 동작 수행 실시 >> 앱 크래시가 발생한 경우 앱 강제 종료 됨


4. 다음번, 앱 동작 수행 시 A_Application >> onCreate 부분에서 앱 내부 크래시 파일이 작성되어 있는 것 체크 (Read File)

  >> 파일 체크 여부 확인 후 저장 되어 있을 경우 애플리케이션 전역 변수 값에 저장 후 >> 앱 크래시 파일 초기화 수행


5. 앱 내부 크래시 파일이 저장 된 경우 >> 앱 로딩 및 로그인 화면에 알림 팝업창 표시 수행

  >> 앱 비정상 종료 기록이 감지 되었습니다. 해당 내용을 관리자에게 신고해 주세요


6. 사용자가 팝업창에서 앱 크래시 신고하기 클릭한 경우 >> 앱 내부에 저장된 크래시 파일을 AWS 및 파이어베이스 S3 에 업로드 수행
 

 

반응형
Comments