Android Kotlin Gson SerializedName NullPointerException 문제

2022. 5. 20. 09:52Android

반응형

원래는 GSON 을 잘 안쓰고  JSON으로 하나씩 다 풀었지만

 

어느순간 이것마저 귀찮아서 Retrofit 으로 Json 을 받을때 SerializedName 이용해 GSON 으로 풀려고 하였다.

 

 서브 프로젝트 할때는 잘되다가 회사 프로젝트에 적용 시켜볼려니 NullPointerException 뜬다

 

머가 문제일까 계속 봐도 모르겠다. response.body 만 찍고 Log 를 봤을땐 분명 데이터가 있는데

 

혹시 몰라 java 로 data 클래스 만들어 해보니 된다.

 

마음같아서는 그냥 java 로 해버리고싶지만 문제의 근본을 해결하지못한 찜찜함 때문에 찾아보기로 하던중

 

찾았다 문제는 Proguard 때문에 생기던거였다.

 

해결방법으로는

 

proguard-rules.pro 에

 

-keepclassmembers,allowobfuscation class * {
@com.google.gson.annotations.SerializedName <fields>;
}

 

추가 해주면된다.

 

https://ddolcat.tistory.com/455

 

[gson] gson.fromJson으로 데이터를 가져오지 못할 때 ( 코드 난독화)

gson라이브러리를 이용하여, json타입의데이터를 가져오는 작업을 하였다. 정상적으로 동작하던 코드가 난독화를 하고 난 후부터 동작을 제대로 하지 않는 문제가 발생하였다. 예전에도 이런 케

ddolcat.tistory.com

이글을 참고하였다

 

저기서 2가지의 방법을 제시 하는데 저는 2번째 방법을 채택했다.

반응형