2013年5月14日 星期二

To get Facebook data by facebook SDK in android

利用此tool(http://developers.facebook.com/tools/explorer) 下指令去取得資料(綠點), 以檢視是否有自己所需要的資訊




1.必須先get access token,選擇所要的permission, 這是因為不論人、 apppages 要使用facebook, 都必須給予一個token
 
=======================================================================

Session session = Session.getActiveSession();
Bundle params = new Bundle();
params.putString("fields", "source, link");
Request request = new Request(session, "OBJECT_ID/photos", params, HttpMethod.GET, callback);
RequestAsyncTask task = new RequestAsyncTask(request);   
task.execute();
2.會有fieldsconnections可以選擇(紅點)
 fields相當於是在這open graph nodes的屬性,可用Bundle來選擇  connnections意思是連到open graph 中另一個node,可用RequestgraphPath來決定
(nodes-connection->nodes  , 10150153595592320/photos)

或者可以寫成

params.putString("fields""photos.fields(source,link)");
Request request = new Request(session, "OBJECT_ID", params, HttpMethod.GET, callback);



=======================================================================

JSONObject  json=  response.getGraphObject().getInnerJSONObject();
JSONArray  jsonArrayData=json.getJSONArray("data");
for(int i=0;i<jsonArrayData.length();i++)
{
     JSONObject jsonObjectImages = (JSONObject)jsonArrayData.opt(i);
     Log.d("AAA","json:"+jsonObjectImages.getString("source"));
}
3.最後在callback的地方會得到JSON的資料格式,大括弧包起來的轉成JSONObject,中括弧包起來的轉成JSONArray  

沒有留言:

張貼留言