반응형
- onResponse : 서버로부터 응답이 정상적으로 온 경우에 대해서 처리
- 200, 401, 403 등등의 정상적인 서버 응답
- onFailure : 에러 때문에 네트워크 요청 실패 혹은 응답에 문제가 있는 경우에 대해서 처리
- Exception 기준으로 분리할 수 있음
- java.net.UnknownHostException(해당 호스트를 찾을 수 없는 경우 - 서버가 내려갔다던가... 등등)
- java.io.IOException(이 경우는 2가지 상황이 있었음)
- 네트워크 에러
- 파싱 에러
- Retrofit2의 기존 컨버터 이용시 해당 형식으로 파싱이 안 되는 경우 발생
- GsonConverter의 경우 모든 Response가 Json형식으로 와야하는데 아무런 데이터가 없는 경우에도 이 에러가 떴음(내부적으론 JsonSyntax 에러가 뜨지만 겉에서 볼 땐 IOException으로 잡힘). 만약 응답에 Json 형식으로 주면서 아무런 데이터가 없는 경우도 받으려고 하면 antdevhistory.tistory.com/52 참고
- Exception 기준으로 분리할 수 있음
주의사항은 UnknownHostException이 IOException을 상속받았기 때문에 둘이 따로 처리해야하는 경우 UnknownHostException을 먼저 처리하고 나중에 IOException을 처리하도록 해야합니다.
혹시 다른 에러의 경우에 대해서도 있으면 댓글 달아주시면 감사하겠습니다.
반응형
'Android > 기타' 카테고리의 다른 글
[Android] 로그에 대한 개인적인 생각 (0) | 2021.06.23 |
---|---|
[Android] Android Geocoder maxResults 값에 대해서 (0) | 2020.12.24 |
[Android] Retrofit2 Converter를 커스텀 해보기 (0) | 2020.10.05 |
[Android] New Google Play Console 리뷰 (0) | 2020.07.07 |
[Android] Doze 모드로 강제로 만들기 (0) | 2020.06.02 |