使用 gson 检索动态 JSON 并改造 returns null?

Retrieve dynamic JSON using gson and retrofit returns null?

我有一个带有动态嵌套对象的动态 json,我创建了这些 pojo 但 model 始终为 NULL 我不知道我做错了什么。

这是我的JSon

{
    "status": 200,
    "message": "Accepted, Ok",
    "model": {
        "مشخصات کلي": {
            "ابعاد": "125X98X76 ميلي متر",
            "وزن": "480 گرم",
            "ضد آب": false
        },
        "حسگر و تصوير": {
            "محدوده دقت حسگر": "20.0 مگاپيکسل و بيشتر",
            "نوع حسگر": "CMOS",
            "قطع حسگر": "Crop Frame",
            "ابعاد حسگر": "APS-C (23.5 x 15.6 mm)",
            "دقت حسگر": "25 مگاپيکسل",
            "دقت موثر حسگر": "24.2 مگاپيکسل",
            "حداکثر رزولوشن عکس": "6000X4000"
        },
        "لنز": {
            "محدوده زوم": "6 تا 10 برابر بزرگنمايي",
            "فاصله کانوني": "18-140 ميلي متر",
            "محدوده ديافراگم": "F/3.5-5.6",
            "بزرگ نمايي اپتيکال": "7.7 برابر",
            "لرزشگير تصوير": true
        },
        "فيلم": {
            "رزولوشن فيلم": "Full HD",
            "حداکثر سرعت فيلم": "60 فريم بر ثانيه",
            "فيلمبرداري سه بعدي": false
        }
    }
}

这里是对应的POJO:

public class ProductTechnicalResponse {
    @SerializedName("status")
    @Expose
    private Integer status;
    @SerializedName("message")
    @Expose
    private String message;
    @SerializedName("model")
    @Expose
    private Model model;
}


class Model {
    Map<String, Map<String,Object>> pairs;
}

将您的 POJO 更改为:

public class ProductTechnicalResponse {
    @SerializedName("status")
    @Expose
    private Integer status;
    @SerializedName("message")
    @Expose
    private String message;
    @SerializedName("model")
    @Expose
    private Map<String, Map<String, Object>> model;
}

模型是一张地图,而不是带有地图的结构。