Honest Coder

안드로이드 스튜디오 Retrofit2 사용법 본문

JAVA

안드로이드 스튜디오 Retrofit2 사용법

정직한 코더 2020. 12. 31. 08:20
반응형

Retrofit이란

Retrofit은 안드로이드 프로그래밍을 할때 api서버에 request를 보낼 때 필요합니다.

 

Retrofit은 네트워크로부터 전달돤 데이터를 프로그램에서 필요한 형태의 객체로 받을 수 있게 해주는 HttpClient 라이브러리 입니다.

 

Http 개발할때 고려해야 할 점

1. 연결
2. 캐싱
3. 실패한 요청의 재시도
4. 스레딩
5. 응답 분석
6. 오류 처리

 

 

HttpURLConnection

URL url = new URL("http://www.naver.com");
HttpURLConnection http = (HttpURLConnection) url.openConnection();

HttpURLConnection은 이렇게 사용하는 데 java.net에 포함된 클래스로 별도의 라이브러리 설치를 안해도 되지만, 직접 구현해야 하는 것들이 많습니다.

 

Retrofit Dependency 추가 및  Internet Permission 추가

internet permission 추가는 androidmaifest.xml 에서 추가

<uses-permission android:name="android.permission.INTERNET"/>

 

Retrofit Dependency 추가는 build.gradle (Module:app) 에서 추가

implementation 'com.squareup.retrofit2:converter-gson:2.6.2'
implementation 'com.squareup.retrofit2:retrofit:2.6.0'

 

 

Retrofit Client 만들기

Retrofit retrofit = new Retrofit
	.Builder()
  	.baseUrl("주소")
 	.addConverterFactory(GsonConverterFactory.create()).build();
 apiService = retrofit.create(ApiService.class)

 

base url은 서버 주소를 넣습니다.

 

API Interface 만들기

 @FormUrlEncoded
 @POST("api/test/1/")
 Call<String> strPost(@FieldMap String str);

 

동기 호출

Call<String> call = apiService.strPost("홍길동");

  call.enqueue(new Callback<String>() {
    @Override
      public void onResponse(Call<String> call, Response<String> response) {
      
      }

      @Override
      public void onFailure(Call<String> call, Throwable t) {
      
    }
  }
});

 

반응형
Comments