관리 메뉴

나만을 위한 블로그

[Android] 레트로핏 사용 시 use jsonreader.setlenient(true) to accept malformed json at line 1 column 1 path $ 에러 해결 본문

Android

[Android] 레트로핏 사용 시 use jsonreader.setlenient(true) to accept malformed json at line 1 column 1 path $ 에러 해결

참깨빵위에참깨빵_ 2020. 3. 17. 19:04
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

저 에러 문구 그대로 구글링하면 저 스택오버플로우의 질문이 나온다. 답변도 달려 있다.

대충 Gson 객체를 만들고 setLenient()를 붙여서 create()한 다음에 그걸 레트로핏 객체를 build()할 때 앞에 끼워넣는다는 내용이다.

하지만 질문자는 OKHttpClient를 이용해서 서버와 통신하고 있었기 때문에 나와는 맞지 않았다.

다른 글에선 JSON 규격이 맞지 않아서 발생한다고 하는데....뭔 소린지

 

예전엔 이 에러가 나오지 않았는데 나온걸 보면 내가 예전과 달리 삽질을 하고 있다는 거라고 생각했다.

그래서 내가 보기 시작한 것은 가장 먼저 오타였다. 그 다음에 한 짓은 후술한 대로다.

 

1. 안드로이드 코드에서 오타 찾기, 클린/리빌드 프로젝트

2. 함수 선언 확인하기

3. MySQL DB 언어 설정 확인

4. php 파일 오타 확인

 

4번에서 걸렸다. DB와 연결하는 파일인 connectd.php에서 내가 연결 성공 시, 실패 시에 각각 echo할 문장을 적어서 DB 연결을 테스트했었는데 이 문장을 깜박 잊고 주석처리하지 않았던 것이다.

주석처리하고 다시 앱을 건드려보니 정상 작동했다.

반응형
Comments