0

나는 (서비스에 의해) 부팅 할 때 시작되는 AsyncTask를 가지고있다. 어떤 경우에는 주 활동을 시작하라는 통보를 보내고 싶습니다.주 활동이 시작되지 않은 상태에서 AsyncTask에서 알림을 보내는 방법은 무엇입니까?

NotificationManager notManager = (NotificationManager) getSystemService(ns); 

일식이 나에게 AsyncTask를이 getSystemService 방법을 가지고하지 않았기 때문에 오류가 표시 여기서 내가 전화 할 때 내 문제는 온다. 어떤 생각?

감사합니다.

+0

'onProgressUpdate'를 사용하여 이와 같은 작업을 해 보았습니까? – BlackHatSamurai

답변

3

getSystemService는 Context 클래스의 메소드이기 때문에. 그것을 확인해보십시오 here.

함수를 호출하기 전에 AsyncTask에 컨텍스트 변수를 만듭니다. 당신이 AsyncTask를 실행하면 입력에 컨텍스트를 잊지 마세요

NotificationManager notManager = (NotificationManager) context.getSystemService(ns); 

: 다음 즉, 생성자에서 초기화

Context context; 

public MyAsyncTask(Context contextin) 
{ context = contextin;} 

그런 다음 함수 호출이 컨텍스트 변수를 사용

MyAsyncTask mytask = new MyAsyncTask(getApplicationContext()); 
mytask.execute(); 

IntentService가 사용자의 요구에 더 적합 할 것이라고 생각합니다.

+0

Android 2.2에서 작동하지 않는 이유 –

1

asynctask에서 백그라운드 스레드의 끝에 응용 프로그램을 시작하는 서비스를 시작할 수 있습니다.