Android Moshi Когда использовать "@JsonClass(generateAdapter = true)"

avatar
Sam Chen
8 августа 2021 в 21:53
122
0
0

В настоящее время я изучаю использование Moshi с Retrofit для работы с запросами сетевого API, одна вещь, которую я запутал:

КОГДА и ЗАЧЕМ использовать @JsonClass(generateAdapter = true) для моих классов данных?

При следующем сценарии:

data class ChatMessagesResponse(val chatMessages: List<ChatMessage>)

data class ChatMessage(val message: String, val user: User, val date: Date)

data class User(val firstName: String, val lastName: String)

И я добавляю пользовательский adapter в Moshi следующим образом:

private val moshi = Moshi.Builder().run {
    add(DateAdapter())    //<- convert between String date and Date date
    add(KotlinJsonAdapterFactory())
    build()
} 

Спросить:

  1. В чем преимущество добавления @JsonClass(generateAdapter = true) для описанного выше сценария?

  2. Нужно ли добавлять @JsonClass(generateAdapter = true) для всех этих трех классов? Или только первые два? Почему?

Источник

Ответы (0)