안드로이드에서 어플을 종료 시키는 코드는 여러가지가 있다.
여러가지가 있는 이유는 각 코드들이 라이프사이클 상황에 따라 바뀌기 때문이다.
(1) finish() : 이 함수는 이 코드가 속해있는 액티비티를 종료 시킵니다. onDestroy()를 호출한ㄷ.
(2) system.exit(0) : 이 함수는 현재 액티비티를 종료 시킨다.
(3) android.os.Process.killProcess(android.os.Process.myPid()) : 이 함수는 현재의 프로세스 및 서비스를 종료 시킨다.
(4) moveTaskToBack(boolean): 이 함수는 현재 어플을 백그라운드로 넘긴다. 현재 실행되고있는 어플이 하나라면 홈화면으로 바뀌겠지... 하지만 종료된 것은 아니다.
이렇듯 안드로이드는 여러 상태에 따라서 종료시키는 방법도 조금씩 달라져야 한다.
따라서 어플을 완전히 종료시키려면 대충
moveTaskToBack(true);
finish();
android.os.Process.killProcess(android.os.Process.myPid());
세 개를 연속으로 호출하는게 좋다.
하지만 결과는 좀 다를 수 있으니 유효적절하게 사용하여야 한다.
[출처] http://codeticker.tistory.com/entry/Android-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EC%96%B4%ED%94%8C-%EC%A2%85%EB%A3%8C%EC%8B%9C%ED%82%A4%EA%B8%B0
'IT > 안드로이드+JAVA' 카테고리의 다른 글
[안드로이드] 안드로이드 스튜디오 gradle versionName 가져오기 (정리) (0) | 2016.04.28 |
---|---|
[안드로이드] Activity 종료시키기 (펌) (2) | 2016.04.25 |
[안드로이드] 로그아웃 예제 (정리) (0) | 2016.04.25 |
[안드로이드] 안드로이드 스튜디오 자동임포트 (정리) (0) | 2016.04.24 |
[자바] 삼항연산자 ?: (펌) (0) | 2016.04.22 |