이전 강의에서는 맞춤 인벤토리 크기를
JobIntentService
클래스 이
Cloud Shell에서
JobIntentService
: 다음을 기준으로 작업을 실행합니다.
Intent
로 작업을 큐에 추가하는 중입니다.
이 Intent
에서 수행할 수 있는 작업
선택적으로
JobIntentService
를 눌러 처리합니다.
작업 요청을 만들어 JobIntentService에 전송
작업 요청을 만들어
JobIntentService
님,
Intent
를 만들어 큐에 추가합니다.
를 호출하여
enqueueWork()
을 클릭합니다.
선택적으로
JobIntentService를 사용할 수 있습니다. 인텐트 만들기에 대한 자세한 내용은
인텐트 및 인텐트 필터의 인텐트 섹션
다음 코드 스니펫은 이 프로세스를 보여줍니다.
-
다음에 대한 새
Intent
를 만듭니다. <ph type="x-smartling-placeholder"></ph>JobIntentService
이RSSPullService
를 호출했습니다.
Kotlin
/* * Creates a new Intent to start the RSSPullService * JobIntentService. Passes a URI in the * Intent's "data" field. */ serviceIntent = Intent().apply { putExtra("download_url", dataUrl) }
자바
/* * Creates a new Intent to start the RSSPullService * JobIntentService. Passes a URI in the * Intent's "data" field. */ serviceIntent = new Intent(); serviceIntent.putExtra("download_url", dataUrl));
-
(으)로 전화걸기
enqueueWork()
Kotlin
private const val RSS_JOB_ID = 1000 RSSPullService.enqueueWork(context, RSSPullService::class.java, RSS_JOB_ID, serviceIntent)
자바
// Starts the JobIntentService private static final int RSS_JOB_ID = 1000; RSSPullService.enqueueWork(getContext(), RSSPullService.class, RSS_JOB_ID, serviceIntent);
활동이나 프래그먼트의 어디에서나 작업 요청을 전송할 수 있습니다. 예를 들어 먼저 사용자 입력을 가져와야 하는 경우 콜백에서 요청을 전송할 수 있습니다. 버튼 클릭이나 유사한 동작에 응답하는 코드를 사용합니다
를 호출한 후
enqueueWork()
,
JobIntentService
는
onHandleWork()
메서드를 호출한 다음 자체적으로 중지합니다.
다음 단계는 작업 요청의 결과를 원래 활동에 다시 보고하는 것입니다.
또는 Fragment입니다. 다음 강의에서는
BroadcastReceiver