마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Activity 전환 시 생명주기와 관련하여 문의드립니다.

0 추천
안녕하세요.
앱을 하나 개발하고 있는데
액티비티 전환 시에 기존 activity가 onDestroy() 되는 문제 때문에 문의드립니다.

[A] 액티비티에서 [B] 액티비티를 호출하게 되는데
Logcat 결과는 아래와 같습니다.

[A] onCreate()
[A] onResume()
** Start Activity B **
[A] onPause()
[B] onCreate()
[B] onResume()
[A] onDestroy()

 

여기서 마지막의 A 액티비티가 onDestroy 되지 않게 해줄 수 있는 방법이 없을까요?
그러니까 B 액티비티가 실행 중에 A 액티비티는 onPause 상태로 있다가
B 액티비티 종료 후에 A 액티비티의 onResume 만 실행 되도록 하고 싶은데
방법을 찾지 못하겠네요..

참고로 support.v7의 AppCompatActivity를 상속받았으며,
고수님들의 답변 기다리겠습니다.
감사합니다.
익명사용자 님이 2015년 12월 1일 질문
2015년 12월 1일 수정

2개의 답변

0 추천
 
채택된 답변
startActivity(b)를 사용하시는 것 보단, startActivitForResult를 사용해서 B에서 A로 돌아올 때 하실 작업을 A의 onActivityResult에 코딩하시는건 어떤가요?? B에서 어떤 방식으로 A로 돌아오는진 안써주셔서 잘 모르겠지만, 특정 버튼이나 하드웨어 백버튼을 눌렀을 때도 직접 설정이 가능하시니 저걸 사용하셔도 괜찮을 것 같습니다....?
늅늅개발자 (490 포인트) 님이 2015년 12월 1일 답변
0 추천
혹시 A 액티비티에서 B액티비티를 호출할때 A액티비티를 finish 하신게 아닌가요?
캬옹이 (37,920 포인트) 님이 2015년 12월 1일 답변
설명이 미흡했네요. finish() 는 호출하지 않았습니다.
단지 startActivity(B); 만 사용했는데 A 액티비티가 destroy 되는군요..
A 액티비티가 destroy 되지 않게 할 수 있는 방법이 없을까요?
manifast에 activity속성을 확인해보세요
finish로 종료되기전까지는 살아있는게 정상입니다.
...