서비스

앱이 실행되어있지 않거나 보이지 않아도 카톡은 다른사람이 보낸 메시지를 받을 수 있다

백그라운드에서 실행되는 서비스가 있기 때문

서비스란 백그라운드에서 실행되는 앱의 구성요소를 말한다

액티비티 처럼 시스템에서 관리한다

액티비티를 만들 때 매니페스트파일에 등록했던 것처럼 새로 만든 서비스도 매니페스트 파일에 꼭 등록해야 한다

서비스를 실행하려면 startService()메서드를 호출 하면 된다

서비스가 비정상적으로 종료되더라도 시스템이 자동으로 재실행한다

startService()메서드를 호출할때 인텐트 객체를 파라미터로 전달

인텐트 객체는 어떤 서비스를 실행할 것인지에 대한 정보를 담고 있다

서비스를 여러번 호출해도 서비스는 이미 메모리에 만들어져있으므로

onService 대신 onStartCommand()메서드를 실행한다

실행된 서비스를 종료하려면 stopService() 메서드 호출

IntentService는 필요한 함수가 수행되고나면 종료된다

IntentService의 함수 (onHandleIntent() : onStartCommand() 메서드로 전달된 인텐트를 전달 받으면서 실행되고 함수실행이 끝나면 종료)

---------------------

+ Recent posts