Vivek Modi
07/21/2022, 7:58 PMSerializer has not been found for type 'ZonedDateTime'. To use context serializer as fallback, explicitly annotate type or property with @Contextual
@Serializable
@Parcelize
data class NearestResult(
val day: ZonedDateTime,
val event: String
) : Parcelable
Landry Norris
07/21/2022, 7:59 PMVivek Modi
07/21/2022, 8:00 PMpitpit
07/22/2022, 7:02 AMobject KZonedDateTimeSerializer : KSerializer<ZonedDateTime> {
override val descriptor: SerialDescriptor =
PrimitiveSerialDescriptor("ZonedDateTime", PrimitiveKind.STRING)
override fun serialize(encoder: Encoder, value: ZonedDateTime) {
encoder.encodeString(value.toString())
}
override fun deserialize(decoder: Decoder): ZonedDateTime =
ZonedDateTime.parse(decoder.decodeString())
}
and after :
@Serializable
@Parcelize
data class NearestResult(
@Serializable(with = KZonedDateTimeSerializer::class) val day: ZonedDateTime,
val event: String
) : Parcelable