从 json 转换 Facebook 通知



在我的应用程序中,我收到来自Facebook的通知,使用适用于Android的Facebook SDK。但是response.toString()方法返回的数据是 json 格式。

我需要知道如何将其转换为简单的人类可读格式,以便我可以使用它们在文本字段中查看?

这就是我从图形浏览器中得到的。必需的字符串是"标题"

{
  "id": "10000115768434",
  "name": "Nauman Aslam",
  "notifications": {
    "data": [
      {
        "id": "notif_10000357346818423_6543370",
        "from": {
          "name": "Muhammad Asad Iqbal",
          "id": "56342467433"
        },
        "to": {
          "name": "Nauman Aslam",
          "id": "324545436818423"
        },
        "created_time": "2014-03-28T20:09:02+0000",
        "updated_time": "2014-03-28T20:16:05+0000",
        "title": "Muhammad Asad Iqbal and Smat Kazmi also commented on Muhammad Asad Iqbal's photo.",
        "link": "http://www.facebook.com/photo.php?fbid=4040070417111&se",
        "application": {
          "name": "Photos",
          "id": "54635732"
        },
        "unread": 1
      },

你要么需要在线找到JSONparser库并使用它们,要么如果你愿意,你可以编写自己的JSONparser类并解析java对象中的数据(顺便说一下,JSON响应通常是人类可读的,它只是作为一个对象或数组或对象)。如果你想编写自己的JSONparser类,这应该不是那么难,我们不能建议你从哪里开始,直到你发布JSONresponse,我们看到响应的格式。

我想说的一件事是首先检查 JSON 响应的格式。了解格式非常重要,因为如果 JSONresponse 采用"对象数组的对象"格式,则必须使用"JSONObject --> JSONArray ->> JSONObject"对其进行解码,否则程序将崩溃。单击此处并将您的 json 响应复制粘贴到文本框中,它将显示它的格式。

如果你想从JSON解码的基础知识开始,点击这里并检查我在stackoverflow上的答案,它非常基本,但如果你刚刚开始处理JSONresponse,这可能是一个好的开始。

编辑

根据您的 JSONresponse,

它从大括号开始,这意味着响应是一个 JSONObject,但我没有看到整个 JSONresponse,并且缺少一些括号,所以我的答案可能没有意义,但如果您理解它,您可以按照以下步骤操作

您要做的第一件事是将响应保存在"字符串"对象中,并创建一个 JSONObject 并通过传递响应来初始化它。 然后你想要从中提取"通知"对象,所以你再次创建第二个JSONObject这个对象只会从字符串中提取"通知"对象然后,您希望提取JSONArray"data",因此定义一个JSONArray

并从JSONObject中获取JSONArray("data")。同样,您将需要JSONObject来仅提取"标题"对象。

总结一下

    Create JSONObject and pass the response String to it
    Create second JSONObject from it
    Create JSONArray and use getJSONArray("___") method on you JSONObject
    and finally create last JSONObject inside a for loop if you have more than one notification 
    and use getString("title") method on that object

您的 JSON 响应不完整,所以我可能是错的,但您可以尝试一下。

当您获得 json 格式的响应字符串时,有一些库允许您将字符串转换为字典类型。

如果你想要一个网站来帮助你查看一个可读的json字符串,请转到这里 在线JSON查看器.将代码粘贴到第一页,然后转到查看器选项卡,您将看到键的名称和值。

相关内容

  • 没有找到相关文章

最新更新