2012-02-29 13 views
0

我有我一年前開發有關應用程序,我 獲取Facebook賬戶是這樣的:未能獲取CategorizedFacebookType

facebookClient = new DefaultFacebookClient(access_token); 
Connection<CategorizedFacebookType> con = facebookClient.fetchConnection("me/accounts", CategorizedFacebookType.class); 
fbAccounts = con.getData(); 

它能正常工作,直到大約一個月前,但現在它返回 fbAccounts列表爲空。這是爲什麼?

我希望從restfb-1.6.2.jar移動到restfb-1.6.9.jar, 幫助但沒有運氣,它在兩者上都是空的。

我錯過了什麼?

編輯,提供我用這個API的另一個錯誤的代碼。曾經工作過的下面的代碼:

String id = page.getFbPageID(); // (a valid facebook page id) 
FBInsightsDaily daily = new FBInsightsDaily(); // an object holding some insights values 

try { 
    Parameter param = Parameter.with("asdf", "asdf"); // seems like the param is required 
    JsonObject allValues = facebookClient.executeMultiquery(createQueries(date, id), JsonObject.class, param); 
    daily.setPageActiveUsersDaily((Integer)(((JsonArray)allValues.opt("page_active_users_daily")).getJsonObject(0)).opt("value")); 
    ... 

這將引發以下異常:

com.restfb.json.JsonException: JsonArray[0] not found. 
at com.restfb.json.JsonArray.get(JsonArray.java:252) 
at com.restfb.json.JsonArray.getJsonObject(JsonArray.java:341) 

同樣,這用來工作正常,但現在拋出這個。

回答

1

你需要從用戶manage_pages的權限來訪問他們的adminned頁的列表 - 一年前我不知道你是 - 檢查你正在獲得來自用戶的許可

{編輯} 某些洞察指標也被棄用,您檢查的具體數值可能不再存在 - https://developers.facebook.com/docs/reference/fql/insights/應該具有現在可用的詳細信息

嘗試在Graph API Explorer中手動檢查您的查詢以消除您的任何問題代碼並希望得到您的SDK可能吞嚥的更詳細的錯誤消息

+0

你明白了,謝謝你。 – Herzog 2012-02-29 14:37:50

+0

我應該知道的其他更改嗎?看起來像這樣:JsonObject allValues = facebookClient.executeMultiquery(createQueries(date,id),JsonObject.class,param);不起作用。 – Herzog 2012-02-29 14:39:36

+0

目前還不清楚你正在做什麼API調用或者錯誤來自哪裏:/ – Igy 2012-02-29 14:44:17