使用GSON,我们使用@SerializedName解析JSON对象,该对象与Kotlin中的变量名没有相同的键。

data class User (
    @SerializedName("id")
    long userId;
    @SerializedName("fullName")
    String name;
)

kotlinx.serialization中,我们可以像这样序列化一个对象,但是如何在(反序列化)期间为变量提供不同的JSON密钥呢?
@Serializable
data class User (
    long userId;
    String name;
)

最佳答案

就像我们在GSON中使用@SerialName一样使用@SerializedName
GSON

data class User (
    @SerializedName("id")
    long userId;
    @SerializedName("fullName")
    String name;
)

Kotlinx序列化
@Serializable
data class User (
    @SerialName("id")
    long userId;
    @SerialName("fullName")
    String name;
)

关于android - kotlinx.serialization:如何解析为与JSON键的确切名称不同的变量名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62254149/

10-15 11:18