본문 바로가기

ANDROID

[안드로이드] 남는 모든 액티비티를 종료하고 앱 재시작시 깔끔하게 시작하기


기존에 


moveTaskToBack(true);

 finish();


등의 코드를 통해 앱을 종료하고 있었는데, 재시작시 중간즘에 남아있던 액티비티의 화면으로 시작되는 것을 확인하고 서치를 통해 


가장 깔끔한 방법을 알았다.


액티비티간 이동도 필요 없다. 어떤 플래그를 설정해 줄 것도 없다. 단 한문장이면 된다.



ActivityCompat.finishAffinity(this);



참고로 참조했던 블로그 원문에서 다른 방식으로도 동일하게 액티비티를 종료해줄 수 있는데,


apk 버전에 따라 호환되지 않는 경우도 있다 하여 apk 16 아래로도 사용 가능하다는 방법을 사용했다.



+ 추가(190405)


System.exit(0)으로 앱을 종료시킬 수도 있는데, 이렇게 종료할 경우 앱과 관련된 프로세스나 블루투스 기기등을 전부 해재가 가능하다. 



참조: https://blog.asamaru.net/2015/12/15/android-app-finish/