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) {
}
}
});
반응형