안드로이드 개발 질문/답변
(글 수 45,052)
1. 보통 Intent 를 사용하여, 다른 activity로 이동 시, activity 실행된 순서들이 stack 에 쌓이게 됩니다.
-> 그래서 back(뒤로) 버튼을 눌렀을 때, 이전의 activity 로 이동이 되는데요.
질문 : 1) system 에 alarmManager 를 이용해서 특정 시간에 A라는 apk 의 메인화면 activity 를 실행시키는 pendingIntent 를 등록(register)
했다고 했을 때, 만약 A라는 apk 가 그 시간에 실행이 되고 있는 상태이면, -> system 에서 날리는 pendingIntent 에 의해서
A라는 apk 의 메인 activity 가 또 실행이 되게 됩니다. 이때, back(뒤로) 버튼을 눌렀을 때 -> A라는 apk 의 activity 들이 stack 에 여러개
저장이 되어서 activity 들이 여러개 실행이 된 것같은?? (중복실행??) 처럼 보입니다.
-> 이런 현상을 없애는 방법이 있을까요?
예를 들면 intent 로 activity 이동 시 -> activity stack 내용을 없애주는 무언가? 가 좋을 듯 하네요.
참고로
android:launchMode="singleTask"
android:clearTaskOnLaunch="true" -> 이 방법들로는 해결이 안되네요.
-> 그래서 back(뒤로) 버튼을 눌렀을 때, 이전의 activity 로 이동이 되는데요.
질문 : 1) system 에 alarmManager 를 이용해서 특정 시간에 A라는 apk 의 메인화면 activity 를 실행시키는 pendingIntent 를 등록(register)
했다고 했을 때, 만약 A라는 apk 가 그 시간에 실행이 되고 있는 상태이면, -> system 에서 날리는 pendingIntent 에 의해서
A라는 apk 의 메인 activity 가 또 실행이 되게 됩니다. 이때, back(뒤로) 버튼을 눌렀을 때 -> A라는 apk 의 activity 들이 stack 에 여러개
저장이 되어서 activity 들이 여러개 실행이 된 것같은?? (중복실행??) 처럼 보입니다.
-> 이런 현상을 없애는 방법이 있을까요?
예를 들면 intent 로 activity 이동 시 -> activity stack 내용을 없애주는 무언가? 가 좋을 듯 하네요.
참고로
android:launchMode="singleTask"
android:clearTaskOnLaunch="true" -> 이 방법들로는 해결이 안되네요.
처음 호출시 onCreate(), 그 다음에는 onNewIntent() 에서 처리하면 됩니다.