안드로이드 개발 질문/답변
(글 수 45,052)
음악을 플레이 하거나, 영상을 보거나 등등 실행중에 메모리를 초기화 하면
서비스가 죽어버리자나요. 그런데 보통 다운 받은 플레이어들 보면 태스크킬러를 이용하던가 아님 작업관리자를 통해서
재생중일때에는 종료가 되지 않던데. 어떤 식의 옵션을 줘야 하는건가요?
아참, 그리고 다른 플레이어들이나 죽지 않는 어플들 보니 작업관리자 어플들로 보니 옆에 Visible 이라고 나오고
제가 만든 어플은 Service 아님 Background로 되던데, 어플 실행시 상태를 Visible로 바꿔줘야 하는가 싶어서
찾아보아도 잘 안나오네요..ㅠ.ㅠ
2010.07.08 15:59:16
자문자답 :
서비스를 foreground 서비스로 만들어야 합니다.
문제는 제가 개발하던 배경이 1.6이였지만 실제 돌리는 단말기들은 2.0 이상들이였습니다
1.6에서 2.0으로 변화면서 생긴 Service API에 관한것은
http://www.androidpub.com/197051
위의 게시글에 잘 설명이 되어있었습니다.(예전에 대충 읽어서 해답을 찾는데 오래걸렸음)
하여튼, 1.6에서 개발하는 저로써는 setForeground(true)를 통하여 서비스를 foreground시키려 했지만 당연히 안됬습니다.
이는 2.0으로 넘어오면서 위의 메서드가 동작을 안하기 때문이죠. 대신 2.0에서부터 startForeground() 메서드가 생겼습니다.
그래서 어떡하나 하다가 API 데모에서 해결책을 찾음...API 데모에 ForegroundService 를 보시면 해결방법이 나와있슴