[英]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.