Java Android中的JSON解析(Flickr API)

Java Android中的JSON解析(Flickr API),java,android,json,Java,Android,Json,我一直在为我的android应用程序从FlickrAPI中提取图像URL 更具体地说,我需要为以下JSON解析第一个owner和第一个id字段 因此,我尝试了 JSONObject json = new JSONObject(jsonString); JSONObject photos = json.getJSONObject("photos"); JSONObject photo = photos.getJSONObject("photo"); String picOwner = photo

我一直在为我的android应用程序从FlickrAPI中提取图像URL

更具体地说,我需要为以下JSON解析第一个
owner
和第一个
id
字段

因此,我尝试了

JSONObject json = new JSONObject(jsonString);
JSONObject photos = json.getJSONObject("photos");
JSONObject photo = photos.getJSONObject("photo");
String picOwner = photo.getString("owner");
String picID = photo.getString("id");
对我来说,逻辑是有意义的(抓取行照片,然后抓取行照片,然后将所有者字段提取为字符串)。但是,会在上抛出一个错误

JSONObject photo = photos.getJSONObject("photo");
我是不是忽略了什么

注意:我要寻找的最终值是

    "id": "8637130199",
    "owner": "93693022@N07"

“photo”
标识的元素是一个JSON数组,您需要使用
JSONArray

JSONObject json = new JSONObject(jsonString);
JSONObject photos = json.getJSONObject("photos");
JSONArray photo = photos.getJSONArray("photo");
if (photo.length() > 0) {
    JSONObject first = photo.getJSONObject(0);
    String picOwner = first.getString("owner");
    String picID = first.getString("id");
}

“photo”
标识的元素是一个JSON数组,您需要使用
JSONArray

JSONObject json = new JSONObject(jsonString);
JSONObject photos = json.getJSONObject("photos");
JSONArray photo = photos.getJSONArray("photo");
if (photo.length() > 0) {
    JSONObject first = photo.getJSONObject(0);
    String picOwner = first.getString("owner");
    String picID = first.getString("id");
}