如何解析以下JSON以从Android中的Web服务检索数据

时间:2014-01-10 08:12:17

标签: android json

你好我有下面给出的JSON,我如何通过将参数传递给(for android)中给出的方法来检索数据:

JSON:

{
  "transport": "POST",
  "envelope": "JSON-RPC-2.0",
  "contentType": "application\/json",
  "SMDVersion": "2.0",
  "target": "\/index.php",
  "services": {
    "search": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [
        {
          "type": "array",
          "name": "criterias",
          "optional": false
        }
      ],
      "returns": "array"
    },
    "getDayConferences": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [
        {
          "type": "integer",
          "name": "nb_day",
          "optional": false
        }
      ],
      "returns": "array"
    },
    "getParticipants": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [

      ],
      "returns": "array"
    },
    "getAllForLocation": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [
        {
          "type": "float",
          "name": "latitude",
          "optional": false
        },
        {
          "type": "float",
          "name": "longitude",
          "optional": false
        }
      ],
      "returns": "array"
    }
  },
  "methods": {
    "search": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [
        {
          "type": "array",
          "name": "criterias",
          "optional": false
        }
      ],
      "returns": "array"
    },
    "getDayConferences": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [
        {
          "type": "integer",
          "name": "nb_day",
          "optional": false
        }
      ],
      "returns": "array"
    },
    "getParticipants": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [

      ],
      "returns": "array"
    },
    "getAllForLocation": {
      "envelope": "JSON-RPC-2.0",
      "transport": "POST",
      "parameters": [
        {
          "type": "float",
          "name": "latitude",
          "optional": false
        },
        {
          "type": "float",
          "name": "longitude",
          "optional": false
        }
      ],
      "returns": "array"
    }
  }
}

提前感谢您的帮助..

3 个答案:

答案 0 :(得分:0)

嗯,最直接的解决方案是使用JsonReader,如果你不介意写很多代码。

但是,您可以尝试查找一些将Json数据映射到POJO的工具。

<强> P.S。在将问题发布到StackOverflow之前,请尝试进行一些研究。

答案 1 :(得分:0)

  1. 您需要先从网络获取数据,我建议使用Volley网络库。 https://developers.google.com/live/shows/474338138

  2. 您可以使用GSON库将json数据解析为object。 http://code.google.com/p/google-gson/

  3. 这就是全部

答案 2 :(得分:0)

Just Go this link尝试你想要的东西..

Json parsing example