2014-09-29 2 views
0

나는 ") (예 : 활동 등의 다른 구성 요소, startService를 호출하여 서비스가 시작되도록 요청할 때"시작 서비스에 읽어 그것이라고시작된 서비스는 시작한 후에 어디에서 수행합니까?

onStartCommand() 

라는 이름의 콜백 메소드를 가지고 있음을 보았다 "일단이 메소드가 실행되면 서비스가 시작되고 무한히 백그라운드에서 실행할 수 있습니다". 나는 "무한히 백그라운드에서 뛰다"는 것이 무엇을 의미하는지 혼란 스럽다. onStartCommand()가 서비스에서 호출 된 횟수를 추적하는 응용 프로그램을 만들었고 해당 메서드가 한 번만 호출된다는 것을 알았습니다 (서비스가 startService에서 시작될 때). 시작된 서비스가 시작된 후에는 백그라운드에서 앉아서 멈추지 않고는 아무 것도하지 않습니까? 시작된 서비스가 일부 동작을 시작한 후에 구현할 다른 콜백이 표시되지 않습니다.

답변

1

예, 서비스는 중지 될 때까지 계속 실행됩니다. 서비스를 중지하지 않고 실행 코드가 완료되면 수명주기 콜백이 호출 될 때까지 대기합니다.

+0

startCommand가 완료 될 때까지 실행 된 다음 서비스가 startCommand (서비스가 생성 된 후에도 다시 호출 될 수 있음) 또는 OnDestroy와 같은 다른 라이프 사이클 콜백까지 대기합니다. – committedandroider

관련 문제