我有一个我在一年前开发的应用程序,我是 获取这样的Facebook账户:

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)
.

再次,这用于工作正常,但现在抛出这个。

有帮助吗?

解决方案

您需要从用户获取的manage_pages权限访问他们的管理页面列表 - 一年前我不确定您是否确实 - 检查您从用户获取该权限

{编辑} 一些洞察力指标也被弃用,您正在检查的特定值可能不再存在 - https://developers.facebook.com/docs/reference/fql/insights/ 应该有现在可用的详细信息

尝试在中手动检查您的查询以消除代码中的任何问题并希望获得更详细的错误消息,即您的SDK可能会吞咽

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top