簡體   English   中英

如何從Facebook圖形API獲取列表

[英]how to I get list from facebook graph API

我正在嘗試使用圖形API從Facebook活動中獲取參與者,我搜索了很多
網站,但仍然不知道如何獲取該“數據”列表。 有人可以解釋一下我如何獲得該清單嗎?

我在圖形API資源管理器上測試了Facebook事件編號: 圖形API資源管理器

public class DetailActivity extends Activity {

private DatabaseHelper db;
private Session session;
private ListView attending;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_detail);

    Bundle extras = getIntent().getExtras();
        int tdId = extras.getInt("tdId");

    db = new DatabaseHelper(this);
    Event event = db.getEvent(tdId);

    TextView name = (TextView)findViewById(R.id.tdName);
    name.setText(event.getName());

    String tdDate;
    String datestring;
    SimpleDateFormat simple = new SimpleDateFormat("dd MMM yy");

    datestring = simple.format(event.getDate());
    tdDate = String.format(datestring);

    TextView date = (TextView)findViewById(R.id.tdDate);
    date.setText(tdDate);

    TextView place = (TextView)findViewById(R.id.tdPlace);
    place.setText(event.getPlace());



    new Request(
            session,
            "/" + event.getEvent() + "/attending",
            null,
            HttpMethod.GET,
            new Request.Callback() {
                public void onCompleted(Response response) {

                /* handle the result */


                }
            }
    ).executeAsync();

}

}

new Request(
            session,
            "/" + event.getEvent() + "/attending",
            null,
            HttpMethod.GET,
            new Request.Callback() {
                public void onCompleted(Response response) {


                    try{
                        GraphObject graphObject = response.getGraphObject();
                        JSONObject jsonObject = graphObject.getInnerJSONObject();
                        Log.d("data", jsonObject.toString(0));

                        JSONArray array = jsonObject.getJSONArray("data");
                        ArrayList<Attendee> attendees = new ArrayList<Attendee>();
                        for(int i=0;i<array.length();i++){

                            JSONObject attendee = array.getJSONObject(i);



                            Attendee attendeeNew = new Attendee(0, attendee.getString("name"),attendee.getString("rsvp_status"), attendee.getString("id"));
                            attendees.add(attendeeNew);

                        }
                        ArrayAdapter<Attendee> adapter = new ArrayAdapter<Attendee>(DetailActivity.this, android.R.layout.simple_list_item_1, attendees);

                        final ListView listViewAttending =
                                (ListView) findViewById(R.id.attending);
                        listViewAttending.setAdapter(adapter);

                    }catch(JSONException e){
                        e.printStackTrace();
                    }


                }
            }
    ).executeAsync();

更新資料

我誤解了你的問題; 您可以執行請求,但是您不知道如何處理JSON響應,對嗎? 我對此沒有直接的Java / Android知識,但這對於Google來說應該很容易。


您可以在Graph API上請求以下內容:

/v2.2/{event-id}/attending

如記錄所示,涉及權限: https : //developers.facebook.com/docs/graph-api/reference/v2.2/event/attending?locale=zh_CN#readperms

  • 任何訪問令牌都可用於檢索隱私設置為“打開”的事件。
  • 用戶訪問令牌可用於檢索該人可見的任何事件。
  • 應用或頁面令牌可用於檢索該應用或頁面創建的任何事件。

以上三種情況中的哪一種適用於您的情況(例如,事件的設置是什么,您擁有哪種訪問令牌)?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM