일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- react line chart
- 스팀게임추천
- react 라인차트
- react circle progress bar
- 프로그래머스 LV.0
- Graveyard Keeper
- 하우스플리퍼인테리어
- 프로그래머스
- 리액트네이티브 hooks
- 오블완
- 안드로이드
- 하우스플리퍼
- ReactNative
- 프로그래머스 Lv0
- react circle progress
- 티스토리챌린지
- react native hook
- react native jsi
- React Native
- Kotlin
- 리액트네이티브
- react native hooks
- 리액트 라인차트
- Android
- react native lodash
- 리액트 line chart
- react
- javascript interface
- circular progress bar
- RecyclerView
Archives
- Today
- Total
숨참고 개발다이브
[안드로이드/오류] API 통신 시 발생하는 SocketTimeoutException 본문
728x90
개발환경에서는 보기 어려운 오류이지만 간혹 통신상태가 고르지 못한 사용자들이 있어 플레이스토어 비정상 종료 로그에 남아있는 걸 확인할 수 있었다.
java.net.SocketTimeoutException:
at okio.Okio$4.newTimeoutException (Okio.java:232)
at okio.AsyncTimeout.exit (AsyncTimeout.java:285)
at okio.AsyncTimeout$2.read (AsyncTimeout.java:241)
at okio.RealBufferedSource.indexOf (RealBufferedSource.java:354)
(...)
말 그대로 서버 통신 시 Timeout때문에 발생하는 오류이다.
기본적으로 connectTimeout은 10초로 설정되어 있기 때문이다.
OkHttpClient 설정 시 connectTimeout, readTimeout, writeTimeout을 설정해주면 된다.
사용 방법은 connectTimeout( timeout: Long, unit: TimeUnit )이다.
OkHttpClient.Builder()
.connectTimeout( 100, TimeUnit.SECONDS )
.readTimeout( 100, TimeUnit.SECONDS )
.writeTimeout( 100, TimeUnit.SECONDS )
.build()
300x250
'개발 > Android' 카테고리의 다른 글
[안드로이드/kotlin] 인터넷 연결 상태 확인하기 (0) | 2022.06.08 |
---|---|
[안드로이드/kotlin] 카카오톡 채널 연결하기(채널 추가하기, 채널 채팅하기) (0) | 2022.06.07 |
[안드로이드/오류] 푸시 FirebaseMessagingService IllegalArgumentException 오류 (0) | 2022.06.06 |
[안드로이드/kotlin] 특정 날짜까지 남은 시간 타이머 만들기(CountDownTimer) (0) | 2022.05.31 |
[안드로이드/kotlin] ViewTreeObserver로 View의 크기 구하기 (0) | 2022.05.30 |
Comments