android - Gson bool 值转换始终为 false

标签 android json gson retrofit

我使用 Gson 作为转换器来通过 Retrofit 解析我的响应,但即使有肯定的响应,我也总是得到 false。

是这样的

响应:

{"groups":{"success":true}}

组响应类

public class GroupsResponse {

    @SerializedName("success")
    private boolean mSuccess;

    GroupsResponse() {}

    public boolean isSuccess() {
        return mSuccess;
    }

    public void setSuccess(boolean success) {
        mSuccess = success;
    }
}

我停止使用 GsonConverter,但仍然得到一个成功假值的对象

最佳答案

您的组对象在技术上嵌套在另一个对象中,可能需要展平您的 json。如果不能,这应该可行:

GroupsResponse.java

public class GroupsResponse {

    @SerializedName("groups")
    private Groups mGroups;

    GroupsResponse() {}

    public boolean isSuccess() {
        return mGroups.isSuccess();
    }

    public void setSuccess(boolean success) {
        mGroups.setSuccess(success);
    }
}

组.java

public class Groups {

    @SerializedName("success")
    private boolean mSuccess;

    Groups() {}

    public boolean isSuccess() {
        return mSuccess;
    }

    public void setSuccess(boolean success) {
        mSuccess = success;
    }
}

关于android - Gson bool 值转换始终为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31458080/

相关文章:

android - 启用谷歌应用程序签名后,生成的 11 个字符的哈希码不起作用

android - 在 Android 中膨胀类 android.support.v7.widget.Toolbar 时出错

java - Oreo 上的短信广播接收器

json - 对 JAX-RS 对象编码的 Glassfish XML(或 JSON)响应导致 HTTP 500 内部服务器错误

javascript - 如何使用 getJSON 从文件中获取 JSON 数组?

java - Jersey 不适用于给定的提供商

android - 如何在 recyclerview 上启用和禁用拖放

mysql - 有什么方法可以在 SQL Select 语句中使用 JSON 对象的值吗?

java - 具有 Collection 字段的对象的 GSON 自定义序列化程序

java - 将 JSON 响应映射到 POJO(使用不同的名称)