Moshi는 Gson을 대체하는 Json converter 라이브러리이다.
Gson보다 성능이 좋고, 에러 메시지를 더 잘 보여주는 등 장점이 많다.
다만 Gson은 Date 타입을 받는 반면 Moshi는 못받기 때문에 String으로 받고 따로 변환을 해줄 필요가 있다.
/* libs.versions.toml */
// [versions]
moshi = "1.15.1"
converterMoshi = "2.11.0"
// [libraries]
#squareup-moshi = { group = "com.squareup.moshi", name = "moshi", version.ref = "moshi" }
squareup-moshi-kotlin = { group = "com.squareup.moshi", name = "moshi-kotlin", version.ref = "moshi" }
squareup-moshi-kotlin-codegen = { group = "com.squareup.moshi", name = "moshi-kotlin-codegen", version.ref = "moshi" }
squareup-retrofit2-converter-moshi = { group = "com.squareup.retrofit2", name = "converter-moshi", version.ref = "converterMoshi" }
#jetbrains-kotlin-reflect = { group = "org.jetbrains.kotlin", name = "kotlin-reflect", version.ref = "kotlin" }
/* app gradle */
// plugins
id("kotlin-kapt")
// dependencies
//implementation(libs.squareup.moshi)
implementation(libs.squareup.moshi.kotlin)
kapt(libs.squareup.moshi.kotlin.codegen)
implementation(libs.squareup.retrofit2.converter.moshi)
//implementation(libs.jetbrains.kotlin.reflect)