Facebook Graph API 调用未检索所有字段

Facebook Graph API calls not retrieving all fields

我正在请求我的 me/albums

  new GraphRequest(
        AccessToken.getCurrentAccessToken(),
        "/me/albums",
        null,
        HttpMethod.GET,
        new GraphRequest.Callback() {
            public void onCompleted(GraphResponse response) {
                parseAlbumResponse(response);
            }
        }).executeAsync();

问题是响应对象只包含 3 个字段:

{
  "data": [
    {
      "created_time": "...",
      "name": "...",
      "id": "..."
    },
...

而不是记录的所有字段 here。萨姆斯适用于 /{album-id}/photos:

{
  "data": [
    {
      "created_time": "...",
      "id": "..."
    },
...

而不是 this。 上次我检查时它工作正常,但突然间发生了这种奇怪的行为。 我已经用 Facebook Graph API 进行了测试,结果是一样的,所以我想这不是我的应用程序的问题。

我正在使用 'com.facebook.android:facebook-android-sdk:4.7.0'。 Facebook 是否更改了请求参数中的内容?

编辑: 正如用户 luschn 建议的那样:

Declarative Fields

To try to improve performance on mobile networks, Nodes and Edges in v2.4 requires that you explicitly request the field(s) you need for your GET requests. For example, GET /v2.4/me/feed no longer includes likes and comments by default, but GET /v2.4/me/feed?fields=comments,likes will return the data. For more details see the docs on how to request specific fields.

所以我不得不将我的请求更改为:
Web 控制台:
me/albums?fields=name, cover_photo, count/{album-id}/photos?fields=id, images

Java:

Bundle parameters = new Bundle();
parameters.putString("fields", "id, images");

Bundle parameters = new Bundle();
parameters.putString("fields", "name, cover_photo, count");

https://developers.facebook.com/docs/apps/changelog#v2_4

在更改日志中搜索 "Declarative Fields",您必须指定要返回的字段。