moshi android 예제

안드로이드 앱에서 JSON 데이터를 파싱해야 할 때 Moshi라는 JSON 파싱 라이브러리를 사용할 수 있습니다. Moshi는 Square사에서 만든 라이브러리로, 간편한 JSON 직렬화 및 역직렬화를 제공합니다.

Moshi 라이브러리 추가

먼저 build.gradle 파일에 Moshi 의존성을 추가해야 합니다.

implementation 'com.squareup.moshi:moshi:1.12.0'

JSON 데이터 모델 클래스 생성

다음으로, JSON 데이터를 파싱하기 위해 필요한 데이터 모델 클래스를 생성해야 합니다. 예를 들어, 다음과 같은 JSON 데이터가 있을 때,

{
    "name": "John Doe",
    "age": 30,
    "email": "johndoe@example.com"
}

해당 데이터를 파싱하기 위한 모델 클래스를 생성합니다.

data class User(
    val name: String,
    val age: Int,
    val email: String
)

JSON 데이터 파싱

이제 Moshi를 사용하여 JSON 데이터를 파싱해보겠습니다.

val jsonString = """
{
    "name": "John Doe",
    "age": 30,
    "email": "johndoe@example.com"
}
"""

val moshi = Moshi.Builder().build()
val jsonAdapter = moshi.adapter(User::class.java)
val user = jsonAdapter.fromJson(jsonString)

// 파싱한 데이터 사용 예시
textView.text = "이름: ${user?.name}, 나이: ${user?.age}, 이메일: ${user?.email}"

Moshi.Builder()를 사용하여 Moshi 객체를 생성하고, 해당 객체를 사용하여 User 모델 클래스 타입의 jsonAdapter를 생성합니다. 그 후, jsonAdapter.fromJson(jsonString)을 통해 JSON 데이터를 파싱하고, 파싱한 결과를 User 객체로 반환합니다.

위 예제에서는 User 객체의 속성을 활용하여 UI에 표시하는 예시를 제공했습니다.

이제 Moshi를 사용하여 안드로이드 앱에서 JSON 데이터를 손쉽게 파싱할 수 있습니다.

#android #Moshi #JSON파싱