안드로이드 비정상 종료 감지 처리 (어플 재시작)

반응형

아래 내용을 소스에 추가합니다.

(MainActivity 에서 감지시 초기 화면 SplashActivity 로 이동)

 

 

첫번재 방법

 

        // 비정상 종료시 어플 재시작
        Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
            @Override
            public void uncaughtException(Thread thread, Throwable ex) {
            Intent crashedIntent = new Intent(MainActivity.thisSplashActivity.class);

                Toast.makeText(MainActivity.this, "비정상 종료 되어 재시작 합니다.", Toast.LENGTH_SHORT).show();

                //crashedIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                crashedIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(crashedIntent);
                System.exit(0);
            }
        });

 

 

두번째 방법

 

링크 참조

https://ssaurel.medium.com/how-to-auto-restart-an-android-application-after-a-crash-or-a-force-close-error-1a361677c0ce

 

반응형

댓글()