singleTop의 경우 이 값이 설정된 Activity는 호출되면 호출된 것 만큼 생성을 하는데 다만 기존에 생성된 것이 있다면
이 것을 재활용 하게 된다고 한다.
따라서 이 경우에는 기존에 떠있는 프로세스를 그대로 사용하기에 onCreate()가 호출되지 않는 것이다.
하지만 singleTask의 경우 이 값이 설정된 Activity는 호출되면 기존 Activity를 죽이고 새로 instance를 생성하기 때문에
항상 onCreate()부터 시작하게 되는 것이다.
이렇게 홈 버튼으로 앱 종료 후 재실행 할 때 onCreate()의 호출 여부로도 singleTop과 singleTask의 차이를 확인할 수 있다.
출저 : http://mazdah.tistory.com/600