나는 FragmentActivity
을 가지고 있으며, 나는 onResume
방법으로 서비스에 바인딩하고있다. 또한 활동에 추가되는 Fragment
이 있습니다. Fragment
은 AsyncTask
에있는 doInBackground
메서드의 서비스를 호출하여 일부 초기화를 먼저 수행 한 다음 초기화 후에 조각의 단추가 활성화됩니다. 그러나 AsyncTask
을 onActivityCreated
또는 onResume
메서드에서 실행하려고 시도했을 때 서비스를 받으려고 시도 할 때 NullPointerException
이 표시됩니다.준비가 완료되면 즉시 조각에서 활동에 액세스하는 방법?
@Override
public void onResume() {
new AsyncTask<Void, Void, Boolean>() {
@Override
protected Boolean doInBackground(Void params) {
return activity.getMyService().doSomeInit(); // getMyService() returns null
}
@Override
protected void onPostExecute(Boolean result) {
someButton.enabled(result);
}
}.execute();
}
액티비티는 서비스에 연결되지만, 서비스를 사용할 준비가 된 (그리고 더 이상 null이 아님) 조각을 어떻게 알 수 있습니까?