안드로이드 개발을 할때면 서버와의 통신은 굉장히 중요합니다.
서버에서 API를 내려주면 POST나 GET등을 이용해 서버를 이용하게 되는 경우가 많습니다.
retrofit2는 안드로이드 앱에서 RESTful API를 사용하기 위한 라이브러리입니다. 이 라이브러리를 사용하면 간단하게 HTTP 요청을 보내고 응답을 받아 처리할 수 있습니다.
코틀린에서 retrofit2를 사용하는 방법은 다음과 같습니다.
1. build.gradle 파일에 retrofit2 라이브러리 추가
dependencies {
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0' // JSON 파싱을 위한 Gson 컨버터
2. API 인터페이스 작성
interface ApiService {
@GET("users/{userId}")
fun getUser(@Path("userId") userId: String): Call<User>
}
3. Retrofit 객체 생성
val retrofit = Retrofit.Builder()
.baseUrl("https://api.github.com/")
.addConverterFactory(GsonConverterFactory.create())
.build()
val apiService = retrofit.create(ApiService::class.java)
4. API 호출
val call = apiService.getUser("octocat")
call.enqueue(object : Callback<User> {
override fun onResponse(call: Call<User>, response: Response<User>) {
val user = response.body()
// 사용자 정보 처리
}
override fun onFailure(call: Call<User>, t: Throwable) {
// 오류 처리
}
})
위 예제 코드에서는 GitHub API를 호출하여 사용자 정보를 가져오는 예제입니다. retrofit2를 사용하면 이외에도 다양한 RESTful API를 쉽게 호출할 수 있습니다.