我的数组是
{"VideoItem":{"PlayUrl":"hello"}}
我想访问PlayUrl
我正在使用的代码
JSONObject obj1 = new JSONObject(retstring1);
JSONArray ja1 = obj1.getJSONArray("VideoItem");
for (int j = 0; j < aJson.length(); j++) {
JSONObject jsonO = aJson.getJSONObject(j);
JSONObject jo1 = (JSONObject)ja1.get(j);
String h=jsonO.getString("PlayUrl")
}
但它返回null。
答案 0 :(得分:3)
VideoItem
不是JSONArray
,即JSONObject
。因此,您需要将其读作getJSONObject("VideoItem")
。
使用
JSONObject obj1 = new JSONObject(retstring1);
JSONObject videoItem = obj1.getJSONObject("VideoItem");
String url = videoItem.getString("PlayUrl");
答案 1 :(得分:1)
你错误地选择getJSONArray()
。
使用getJSONObject()
因为您的字符串/响应仅包含JSONObject
(主要和子对象)
JSONObject mainObject= new JSONObject(yourJSONString);
JSONObject objVideo= mainObject.getJSONObject("VideoItem");