본문 바로가기

IT관련 정보

안드로이드 네트워킹 라이브러리 Retrofit 알아보기

안드로이드에서 서버와의 통신을 하기 위해서는 다양한 방법이 있지만 오늘은 Retrofit에 대해서 알아보겠다.

 

 

Retrofit이란?

Retrofit Square사에서 개발한 안드로이드용 HTTP 클라이언트 라이브러리로 간편한 인터페이스와 빌더 패턴을 사용하여 네트워크 요청을 처리하며, JSON, XML 등 다양한 형식의 응답을 쉽게 처리할 수 있다.

 

 

 

1. 의존성 추가

레트로핏을 사용하기 위해서는 우선 build.gradle파일에 의존성을추가해야한다. 

implementation 'com.squareup.retrofit2:retrofit:2.9.0'

끝의 버전은 최신 버전으로 맞게 쓰면 된다.

 

2. 인터페이스 생성

그 후 API요청을 담당하는 인터페이스를 생성한다.

public interface ApiService 
{
    @GET("posts/{id}")
    Call<Post> getPost(@Path("id") int id);
}

 

 

3. 레트로핏 객체 생성

그 후에 레트로핏 객체를 생성한다.

        Retrofit retrofit = new Retrofit.Builder()
                .baseUrl("서버의 주소") 
                .client(okHttpClient)
                .addConverterFactory(GsonConverterFactory.create(gson)) 
                .build();
        api = retrofit.create(API.class);
    }

서버의 주소에는 서버와 통신을 하기위한 서버의 주소가 들어가야 한다.

 

4.  API호출

이제 API를 호출하여 레트로핏을 사용할수있다.

Call<ResponseBody> call = RetrofitBuilder.getApi().getLinkResponse(link);
        call.enqueue(new Callback<ResponseBody>()

이런식으로 호출하여 사용할수있다.


5.통신 성공시

만약 통신에 성공하여 서버로부터 응답 데이터를 받았다면  

if (response.isSuccessful())
{
	변수=response.body()
 }

형식으로 받아온 데이터를 담을 수 있다.

 

오늘은 이렇게 레트로핏을 이용해서 안드로이드와 서버사이의 통신을 간편한 코드로 연결할 수 있다는 것을 알아보았다.