관리 메뉴

나만을 위한 블로그

[Android] Retrofit 사용 시 Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $ 에러 해결 본문

Android

[Android] Retrofit 사용 시 Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $ 에러 해결

참깨빵위에참깨빵_ 2020. 3. 20. 21:51
728x90
반응형

참고한 사이트 : https://stackoverflow.com/questions/39918814/use-jsonreader-setlenienttrue-to-accept-malformed-json-at-line-1-column-1-path

 

Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $

What is this error ? How can I fix this? My app is running but can't load data. And this is my Error: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $ This is my

stackoverflow.com

레트로핏을 이용해 서버와 통신하며 CRUD 기능을 구현해 테스트하던 중 갑자기 이런 에러가 떴다.

잘 되던 게 갑자기 이런 에러를 뿜어서 당황했지만 함수명이 직접 나온 걸 보니 저걸 어디다 설정해주면 해결되지 않을까? 생각하며 구글링해봤다.

가장 먼저 보인 스택오버플로우 글을 보니 정답이었다.

레트로핏 객체와 BASE_URL을 선언하고 레트로핏 빌더 함수를 이용해 레트로핏을 만드는 클래스에서 Gson을 생성한 다음 GsonConverterFactory.create()의 create() 안에 gson 객체를 넣어주면 해결되는 문제였다.

 

보면 Gson gson 해서 GSON 객체를 만들 때 setLenient() 옵션을 넣어서 만든 뒤, 그것을 그대로 GsonConverterFactory의 create() 안에 넣는 걸 볼 수 있다.

이후에도 추가적인 에러가 뜰 수 있다는데, 나한테도 그 에러가 왔지만 스타벅스 매장의 와이파이 상태가 왔다갔다해서 생긴 현상이었다. 와이파이가 제대로 잡히니 해결됐다;;

두번째 에러는 어거지로 해결된 것 같아서 찜찜하다.

반응형
Comments