[안드로이드스튜디오_문화][Retrofit+OkHttp+Gson]

기말 지하기포·2023년 10월 24일
0

#"Http통신"이란?
안드로이드 스튜디오에서 HTTP 통신은 안드로이드 앱과 웹 서버 || 웹 서비스와 데이터를 주고받는 프로세스임.

#"OkHttp"란?
=> HTTP 통신을 효율적으로 할 수 있도록 도와주는 라이브러리임.
=> 공식문서 주소 : https://square.github.io/okhttp/

#OkHttp 사용방법

  1. app 수준의 build.gradle에 종속성 추가하기.
  1. OkHttpClient()의 객체를 생성하기.
  1. 인터넷 사용권한 추가해주기.
  1. AndroidManifest.xml 파일의 [application] 태그에ndroid:usesCleartextTraffic="true"를 작성해주기 => Http 통신을 가능하게 해준다. (Http 통신은 데이터 유출 위험이 있어서 위험하거든)
  1. OkHttp에서 제공해주는 Callback 인터페이스를 활용해서 OkHttp 통신 열어주기.
    -onResponse는 respone을 반환한다. 이 response에는 웹에서 보내주는 Data가 담겨있어
  1. OkHttp를 사용해서 웹에서 받아온 data를 저장 할 변수를 만들고 , response에서 데이터를 뽑아서 그 변수에 넣어줘서 사용하면 된다.
  1. 받아온 Data가 Json 형식이면 Gson을 사용하면 된다.

#Gson이란?
=> Json 객체를 바로 AndroidStudio에서 사용하기 쉽게 Kotlin 객체로 바꿀 수 있게 도와준다. : xml , csv 처리도 쌉가능.
=> 공식문서 링크 : https://github.com/google/gson/blob/main/UserGuide.md
#사용방법

  1. app 수준의 build.gradle에 종속성 추가해주기
  1. Json 객체에 알맞는 data class를 선언해준다. 선언해주고 data class의 변수명 위에 @SerializedName("Json에서 가져올 Key의 이름")
  1. 실제로 Json 객체를 Kotlin 객체로 변화시키기
    Gson().fromJson(Json이 저장된 변수명 , DataType) : 아래 코드 참고해봐.

#"Retrofit"이란?
=> OkHttp를 네트워크 레이어로서 활용하는 OkHttp의 상위호환 라이브러리임. 네트워크 통신을 편하게 도와주는 기능이 많음. + Http Method를 지원한다.
=> 공식문서 링크 : https://square.github.io/retrofit/

#사용방법

  1. app 수준의 build.gradle 파일에 종속성 추가해주기
    : implementation 'com.squareup.retrofit2:retrofit:2.9.0'
  1. app 수준의 build.gradle 파일에 Retrofit에서 사용 할 컨버터의 종속성 추가하기.
  1. 인터넷 사용권한 추가해주기
  1. Retrofit.Builder()를 활용해서 Retrofit 객체를 생성하기
  1. 그리고 Retrofit을 사용할 곳에 가서 retrofit.create()를 사용하면 된다.
profile
포기하지 말기

0개의 댓글