안드로이드 개발 질문/답변
(글 수 45,052)
Task manager에 의해 app이 종료되면 그 app에 있던 BroadcastReceiver도 같이 종료되는것 같습니다.
부팅 되고 한번도 app을 실행하지 않은 상태에서는 broadcast 메시지를 잘 수신하는데,
Task manager에 의해 kill 당하면 broadcast 메시지를 수신하지 못하는군요.
kill당하고 난 후, app을 한번 실행시켜주고 난 후에는 다시 정상적으로 receiver가 동작하더군요.
Task manager에 의해 kill 당한경우, 어떻게 하면 broadcast를 수신받게 할수 있나요?
app의 receiver만 따로 register하는 방법이 있나요??
개발환경은 3.2 입니다.

2012.02.15 10:52:58
저는 킬하고도 잘 작동하는것 같은데, 브로드캐스팅을 보내는 서비스가 kill할때 같이 종료되는건 아닌가요? 그리고 메인페스트에서 필터추가하신 건가요?
2012.02.15 11:00:51
저도 그런줄 알았습니다.
예전에 하던 프로젝트들에서는 kill 당하고도 리시버는 메시지 수신이 되었던것 같았는데...
이번에 새로운 프로젝트 하면서 테스트 하다보니 안되는군요.
오기억인지 가물가물해서 여기저기 물어보고 있는데 시원한 답변은 안나오네요.
app의 리시버로 메시지 보내는 service는 숨겨져있어서 kill당하지 않은 상태입니다.
아무리 메시지를 보내도 수신되지 않으니 미칠것 같네요.
app을 강제로 다시 실행시켜주면 되긴 하지만, 그건 제가 의도한 일을 벗어난 동작이라...
프로젝트를 첨부터 다시 구상해야하나마나 고민입니다. ㅠㅠ




manifest에 리시버를 등록해 보세요.