내 요구 사항은 간단합니다.android 백그라운드 인텐시브 서비스를 중지하는 방법?
간단한 앱이 있습니다. 2 단추. 1 개의 서비스. 조건 : Button1 클릭 -> IntentService.Button2 클릭 시작 -> IntentService 중지.
첫 번째 부분은 정상적으로 작동합니다. startService (intent) 명령을 사용하여 IntentService를 시작할 수 있습니다. 그러나 IntentService를 중지 할 수 없습니다. stopService (intent) 명령이 작동하지 않습니다. 오류를 던지거나 아무 것도하지 않습니다.
누구나이 부분을 밝힐 수 있습니까?
이 질문을 검색하고이 사실을 발견했습니다. How to stop an IntentService? 하지만 내 필요에 대한 대답은 아닙니다.
intentservice에서 비동기 작업을 수행해야합니까? – greywolf82
예. 사용자가 서비스를 중단하기 전까지 무한정의 시간 동안 백그라운드에서 서비스를 실행하고 싶습니다. (내 경우에는 버튼을 클릭하여). –
'IntentService'가 어떻게 작동하는지 이해하지 못할 것 같습니다. 'startService()'를 호출하고 무엇을해야 하는지를 알기에 충분한 정보를 담고있는'Intent'를 전달합니다. 서비스가 시작되고해야 할 일은 무엇이든하고, 더 이상 할 일이 없다면 (즉, 더 이상 대기중인'Intent's) 대기열을 멈 춥니 다. 'startService()'를 또 다시 호출 할 때까지 다시 실행되지 않습니다. 그래서 현재'Intent'를 처리하고 있다면'IntentService'를 멈출 수 없으며 현재 처리중인 것이 없다면 어쨌든 실행되고 있지 않습니다. –