반응형
[android] Activity 가 아닌 곳에서 startActivity() 호출이 지양되는 이유. |
Activity 가 아닌 곳에서 startActivity() 를 호출하면 Exception 이 나곤 한다.
이 때 Exception 정보에서는 FLAG_ACTIVITY_NEW_TASK 를 추가하라는 메세지를 담곤 한다.
이는 안드로이드에서는 엑티비티를 stack 으로 관리하기 때문인데..
서비스나 Broadcast 같은 경우는 task 가 아니기 때문에 Activity 를 어떤 스택에 쌓아야 할지를 모른다. 하지만 FLAG_ACTIVITY_NEW_TASK 를 사용하는 경우에는 새로운 테스크에 stack을 쌓기 때문에
문제가 되지 않는 형태.
이제 Activity 가 아닌 곳에서 startActivity() 를 호출하지 말란 이유가 이해가 되겠지?
반응형
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[Java] 메소드 오버로딩 ( Method Overloading ) 에 대하여. (0) | 2013.09.06 |
---|---|
[android] font size, sp 와 dp 와의 관계는? (5) | 2013.09.06 |
[Java] BufferedWriter 에 대하여. (0) | 2013.09.04 |
[android] ScrollView android:fillViewport (6) | 2013.09.04 |
[Java] JDBC, Database Clob 이 뭐야? (0) | 2013.09.02 |
댓글