카테고리 없음

[Android] Retrofit2

도넛의용기 2023. 7. 9. 05:36

안드로이드 개발을 할때면 서버와의 통신은 굉장히 중요합니다.

서버에서 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를 쉽게 호출할 수 있습니다.