0

나는이 나는 사용자가이 같은 특정 알림 액션을 탭하면 실행하고자하는 PendingIntent에 싸서 IntentService :알림 작업에 의해 실행 된 IntentService는 어떤 스레드에서 실행됩니까?

Intent actionIntentService = new Intent(context, ActionIntentService.class); 
PendingIntent actionPendingIntent = PendingIntent.getService(app, getNotificationId(), actionIntentService, PendingIntent.FLAG_CANCEL_CURRENT); 

그때 만들어 내 알림이 보류 목적으로 액션을 추가해야합니다

notificationBuilder.addAction(R.drawable.ic_notif_action, actionTitle, actionPendingIntent); 

내 질문은, m의

onHandleIntent(Intent intent) 

에있어서, 상기 NotificationCompat.Builder를 통해 y IntentService가 호출되어 스레드가 실행됩니까?

내 코드를 디버깅했으며이 메서드 호출이 주 스레드에서 실행된다는 인상을줍니다. 그렇다면 배경 스레드에서 실행되도록하려면 어떻게해야합니까?

편집 :

내 ActionIntentService이 IntentService

class ActionIntentService extends IntentService 
+0

IntentService가 기본 UI 스레드 (즉, 요점)가 실행되지 않음 – Booger

답변

1

문서를 참조하십시오를 확장하지, 당신이 설명하는 방법은 존재하지 않습니다. 당신은 IntentService를 확장하고 onHandleIntent(Intent)

문서를 구현해야 말한다 :

이 방법은 처리 요청으로 작업자 스레드에 호출됩니다.

+0

그렇다면 질문은 무엇입니까? 나는 대답이 이미 제공되었다고 생각한다. –

+0

내 질문에 onHandleIntent() 알림에서 작업을 도청하여 호출 할 때 주 스레드에서 실행되는 이유입니다. – murki

+0

그렇지 않습니다. 어떻게 알았어? 어떻게 확인하나요? –