개발 지식 공유, 복습

Retrofit2 - 공공데이터(2) 본문

안드로이드(Kotlin)

Retrofit2 - 공공데이터(2)

like_sonny 2022. 5. 15. 19:57

1편을 쓰고 2편까지 오는데 너무 오래 걸려서 죄송합니다.....

 

이어서 쓰자면 이전 마지막에 코드를 작성하기 전 한 단계를 더 거쳐야 한다.

JSON To Kotlin Class

Json To Kotlin Class 플러그인을 설치해줘야 한다. 코틀린에서 이 플러그인을 설치하면 더 편하게 데이터에 접근할 수 있다.

(File -> Settings -> Plugins -> Marketplace -> 검색)

 

그 후 파일을 하나 만들고 그 안에서

저 커서는 무시해주시기 바랍니다....  Kotlin data class File from JSON을 누르고 안에다 JSON을 복붙 해주면...

(1편에서 보여준 그런 JSON 형식)

 

손쉽게 생성

다음과 같이 보기 좋게 생성할 수 있다! 들어가 보면 JSON 형식에 맞춰 필요한 클래스들이 생성됨을 알 수 있다.

 

그리고 다시 공공데이터를 필요로 하는 파일로 와서 인터페이스를 생성해줘야 한다.

공공데이터 주소에 접근하기 위한 인터페이스 생성

본인이 가져오고자 하는 공공데이터에 대한 인터페이스를 생성하였다. 저기 가려진 부분은 KEY 부분이다.

이걸 하면서 느낀 점은 항상 공식적인 docs를 보고 찬찬히 해보는 게 베스트라고 생각한다...

(거기에 리턴 형식, 파라미터 형식 등이 잘 나와있다.)

 

공식 docs를 보면서 저기 적혀있는 쿼리들을 맞춰서 잘 적어줘야 한다. 무조건 다 적는 것보다는 필수로 하는 파라미터들은 무조건 적어주고, 본인이 더 필요한 파라미터들은 추가로 넣어주면 된다.

 

그리고 이제 1편 마지막에서 말한 대로 gson과 retrofit을 선언해주고

https://like-sonny.tistory.com/17

 

Retrofit2 - 공공데이터(1)

앱을 개발하다 보면 API를 이용할 필요가 생길 것이다. 그럴 때 Retrofit을 이용하면 편리? 할 것 같다. build.gradle파일에서 다음 3가지를 추가해주자. dependencies { implementation 'com.squareup.retrofit2:..

like-sonny.tistory.com

retrofit을 이용해 데이터 가져오기

저 stationService는 위에서 설정한 인터페이스 타입으로 설정하고 그 인터페이스의 메서드인 getInfo을 통해 데이터를 가져올 수 있도록 한 것이다.

보통 데이터를 가져올 때 아까 위위쯤에서 설명한, 여기서는 StationInfo의 response.body().~~~ 이런 식으로 접근할 수 있다. 이것은 본인이 어떻게 설정했느냐에 따라 달라질 수 있다. 하지만 나처럼 저 플러그인을 사용하면 저렇게 접근할 수 있지 않을까...?

 

결국 이렇게 해서 공공데이터에 접근이 가능해졌다!

 

어떻게 내 설명이 잘 이해가 됐을지는 모르겠다.... 하지만 무엇보다 최고는 공공데이터에서 제공하는 공식 docs를 보면서 구글링을 하면 더 이해하기 쉬울 것이라 장담할 수 있다!

'안드로이드(Kotlin)' 카테고리의 다른 글

Retrofit2 - 공공데이터(1)  (0) 2022.03.10
Fragment 이동 - Kotlin  (0) 2022.01.28
인트로 화면(Splash) - Kotlin  (0) 2022.01.28