AsyncTask에서 Empty or Null Cases 예외처리하기

출처: Udacity

AsyncTask에서 url을 가지고 데이터를 가져오는 경우 url이 잘못된경우나, 데이터를 가지고오려는 서버상의 문제로 데이터가 불러지지 않을경우 예외처리가 필요하다.
  protected Event doInBackground(String... urls) {
      // Don't perform the request if there are no URLs, or the first URL is null.
      if (urls.length < 1 || urls[0] == null) {
         return null;
      }

      Event result = Utils.fetchEarthquakeData(urls[0]);
      return result;
  }
  protected void onPostExecute(Event result) {
     // If there is no result, do nothing.
     if (result == null) {
         return;
     }

     updateUi(result);
  }

위와같은 콜백메서드 내에서의 예외처리를 통해 예외상황을 처리할 수 있다. 더 자세히 예외처리를 해야하지만, 눈여겨봐야할 코드는 각 콜백메서드 내에서 if문일것이다.
















댓글

이 블로그의 인기 게시물

API 요청 URL(URI) 만들기(조합하기) -Uri.Builder사용하기-

TextView에 글자를 넣어주는 방법(setText, append)

텍스트 뷰의 배경을 원형 이미지로 지정하고, 배경 색상 채우기(안드로이드)