如何使用 volley 获取多级 JSON?

How to fetch multilevel JSON using volley?

我的 JSON 我愿意从每个“显示”数组中获取数据的示例

 {
            "score":17.873907,
            "show":{
                "id":139,
                "url":"http://www.tvmaze.com/shows/139/girls",
                "name":"Girls",
                "type":"Scripted",
                "language":"English",
                "genres":[
                    "Drama",
                    "Romance"
                ],
                "status":"Ended",
                "runtime":30,
                "premiered":"2012-04-15",
                "officialSite":"http://www.hbo.com/girls",
                "schedule":{
                    "time":"22:00",
                    "days":[
                        "Sunday"
                    ]
                },
                "rating":{
                    "average":6.7
                },
                "weight":81,
                "network":{
                    "id":8,
                    "name":"HBO",
                    "country":{
                        "name":"United States",
                        "code":"US",
                        "timezone":"America/New_York"
                    }
                },
                "webChannel":null,
                "externals":{
                    "tvrage":30124,
                    "thetvdb":220411,
                    "imdb":"tt1723816"
                },
                "image":{
                    "medium":"http://static.tvmaze.com/uploads/images/medium_portrait/31/78286.jpg",
                    "original":"http://static.tvmaze.com/uploads/images/original_untouched/31/78286.jpg"
                },
                "summary":"<p>This Emmy winning series is a comic look at the assorted humiliations and rare triumphs of a group of girls in their 20s.</p>",
                "updated":1600633829,
                "_links":{
                    "self":{
                        "href":"http://api.tvmaze.com/shows/139"
                    },
                    "previousepisode":{
                        "href":"http://api.tvmaze.com/episodes/1079686"
                    }
                }
            }
        }

我正在使用的请求代码很好地给出了响应,但我无法解析对 JSONObject

的响应

显示错误

org.json.JSONException: Value show of type java.lang.String cannot be converted to JSONObject

当你传递 JSONObject("show") 时,它试图将 'show' 字符串转换为 json 显然它不是 json stirng 所以它抛出错误; 它应该是这样的:

JSONObject obj = new JSONObject(response);
JSONObject obj_show= obj.getJSONObject("show"));
Log.d("show",obj_show.getJSONObject("show").toString());

解决方案是 “我使用嵌套模型 Class 来加载数据,效果非常好!”