반응형
Notice
Recent Posts
Recent Comments
Link
NOW OR NEVER
[Android] Retrofit 서버 통신 값 null로 올 시 처리 본문
반응형
전에는 nullOnEmptyConverterFactory라는 함수를 안드로이드에서 제공했었는 데 현재는 안하는 지 뜨지 않아 임의로 이렇게 함수를 만들어 놓고 해당 함수를 retrofit builder 에서 사용할 것이다.
private val nullOnEmptyConverterFactory =
object : Converter.Factory() {
fun converterFactory() = this
override fun responseBodyConverter(
type: Type,
annotations: Array<out Annotation>,
retrofit: Retrofit,
) = object : Converter<ResponseBody, Any?> {
val nextResponseBodyConverter =
retrofit.nextResponseBodyConverter<Any?>(
converterFactory(),
type,
annotations,
)
override fun convert(value: ResponseBody) =
if (value.contentLength() != 0L) nextResponseBodyConverter.convert(value) else null
}
}
아래처럼 retrofit을 쓰는 함수 안의 retrofit builder 부분에서 addConverterFactory() 매개변수로 아까 만들어 놓은 함수를 넣기만 하면 끝이다!
'Android' 카테고리의 다른 글
[Android] bottomsheet 완전히 펼쳐지게 하기 (0) | 2023.12.18 |
---|---|
[Android] 키보드에 요소 가려지는 현상 해결 (0) | 2023.12.17 |
[Android] 안드로이드 공식 문서 정리 - Activity 개념 (0) | 2023.11.18 |
[Android] Hilt (0) | 2023.10.14 |
[Android] properties 값을 Manifest 및 다른 파일에서 사용하기 (0) | 2023.09.13 |
Comments