Android Facebook GraphResponse从数组中获取字符串

时间:2016-02-23 19:50:56

标签: android arrays facebook

我对我正在阅读的所有内容感到困惑。我正在尝试从数组中获取特定项目,以便我可以在视图中显示它们。

我正在使用Facebook的GraphResponse来提取ID,名称,AccessTokens等。但我不知道如何使用getJSONArray()getJSONObject(),甚至何时使用它们。

我有这个要求:

GraphRequest request = GraphRequest.newGraphPathRequest(
    accessToken,
    "/me/accounts",
    new GraphRequest.Callback() {
        @Override
        public void onCompleted(GraphResponse response) {
            // Insert your code here
        }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "name,id,access_token");
request.setParameters(parameters);
request.executeAsync();

这应该让我这样:

{
    "data": [
        {
            "name": "Sample Page 1",
            "id": "1234567890",
            "access_token": "sample_token"
        },
        {
            "name": "Sample Page 2",
            "id": "2234567890",
            "access_token": "sample_token"
        },
        {
            "name": "Sample Page 3",
            "id": "3234567890",
            "access_token": "sample_token"
        }
    ],
    "paging": {
        "cursors": {
            "before": "***********",
            "after": "***********"
        }
    }
}

现在,我遇到了“你的代码在这里”部分的问题。在将for放入数组后,我一直在尝试response循环,但我不知道如何为数据中的每个页面获取每个字符串。

我试过玩这个:

JSONArray jsonArray = response.getJSONArray();
for(int i=0; i < jsonArray.length(); i++){
    //Not sure what goes in here to get the string of "name" or "access_token
}

我想知道如何从GraphRequest中的数组中获取信息。

1 个答案:

答案 0 :(得分:0)

了解如何:

{{1}}