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

서비스에서 함수종료는 어떻게 하나요?

0 추천
 public void timeStart() {
    	TimerTask second = new TimerTask() 
    	{
    		@Override
    		public void run() 
    		{
    			time=time+1;
    			Log.e("time", time+"second");
    		}
	    };
	    Timer timer = new Timer();
	    timer.schedule(second, 0, 1000);

이런 함수가 있는데 

종료버튼 눌렀을때 서비스가 중지 되게 하려고하는데요 폰내에서는 서비스가 중지 됬는데

저 함수가 계속 돌아가고 있더군요

로그로 보니까 onDestroy 안에 뭐라고 써야 저 함수가 제대로 종료가 될까요?

망디 (630 포인트) 님이 2013년 8월 12일 질문

1개의 답변

0 추천
 
채택된 답변
timer를 서비스의 멤버변수로 만드시고

서비스의 onDestroy() 구문 안에 다음과 같은 로직을 추가해주시면 됩니다.

if(timer != null) {

     timer.cancel();

     timer = null;

}
Gradler (109,780 포인트) 님이 2013년 8월 12일 답변
망디님이 2013년 8월 12일 채택됨
별것도 아닌걸로 낑낑거리고 있었네요 ㅠ ㅋㅋㅋ 감사합니다.
...