룬아님의 취중코딩

TaskStackBuilder 사용 시 이전 task는 어떻게 될까? 본문

개발/안드로이드 개발

TaskStackBuilder 사용 시 이전 task는 어떻게 될까?

룬아님 2020. 1. 17. 14:52

앱을 사용하는 도중 TaskStackBuilder을 사용해 PendingIntent를 만든 Notification을 사용하면 어떻게 될까?

기본적인 생각으로는 FLAG_ACTIVITY_NEW_TASK를 사용하지 않는다면 실행 중인 엑티비티 위에 PendingIntent의 task가 쌓여
같은 화면이 두개가 나올 것이라고 생각했지만 새로 생긴 task만 남고 이전 task는 사라진 것을 확인할 수 있었다.

이는 TaskStackBuilder가 기본적으로 task를 reset하고 새로운 task를 만들기 때문인데
이 때문에 생명주기상으로도 MainActivity에서 onNewIntent()가 호출되는 것을 확인할 수 있었다.

https://stackoverflow.com/a/42678747

 

singleTop Activity sometimes being created even when on top of stack

I have an Activity whose launchMode is singleTop (in the manifest). My understanding is that if an Activity is singleTop and it is on top of the activity stack, then launching an the Activity with ...

stackoverflow.com

 

결론 : task를 초기화 하기 때문에 이전에 남아있는 화면들은 전부 사라진다.

반응형
Comments