AsyncTask 비동기 처리 시, Context가 필요한 부분에서 nullPointerException이 계속 떨어지는데요.
제 감은 비동기 처리에서의 Context 처리 부분이 문제인데... 원인을 좀 알려주실 수 있나요...?
한번 에러난 이후로 재현이 잘 안되서 잡기가 어렵네요 ㅠㅠㅠ
private void getFirstData() {
PrefUtil.getEditor(this).putString(Const.PREF_KEY_NOTICE_DATA, "").commit();
AsyncTask.execute(new Runnable() {
@Override
public void run() {
String result = NetworkUtil.connectGet(IntroActivity.this, API.getHomeUrl(PrefUtil.getPref(IntroActivity.this).getInt(Const.PREF_KEY_SELECTED_AGE_TYPE, 0)));
Gson gson = new Gson()
data = gson.fromJson(result, HomeResponse.class);
// SharedPreferences에 객체 저장, IntroActivity.this 는 Context로 캐스팅
// 해당 구간에서 에러남
data.saveToLocal(IntroActivity.this);
result = NetworkUtil.connectGet(IntroActivity.this, API.FIRST_NOTICE_URL);
NoticeResponse response = new Gson().fromJson(result, NoticeResponse.class);
if (response != null && response.getCode() == 0)
PrefUtil.getEditor(IntroActivity.this).putString(Const.PREF_KEY_NOTICE_DATA, new Gson().toJson(response.getNotice())).commit();
notiProcessDone();
}
});
}