0

我必须在 Android 中获取登录我的应用程序的当前用户的事件列表,并且我正在使用此代码来提取列表:

  String fqlQuery = "SELECT eid, name, pic, creator, start_time FROM event WHERE eid IN " + " (SELECT eid FROM event_member WHERE uid = me() LIMIT 25)";
        Bundle params = new Bundle();
          params.putString("q", fqlQuery);
          Session session = Session.getActiveSession();
          Request request = new Request(session,
              "/fql",                         
              params,                         
              HttpMethod.GET,                 
              new Request.Callback(){         
                  public void onCompleted(Response response) {
                      Log.i(TAG, "Result: " + response.toString());
                  }                  
          }); 
          Request.executeBatchAsync(request);                 
      }

但我总是得到空白的结果集。请让我知道我在这里缺少什么。我对此很陌生,并试图从 facebook 开发人员指南中学习。

我用于我的应用程序的权限:

  • 默认活动隐私:公开
  • 用户和朋友权限:user_events friends_events
  • 身份验证令牌参数:queryString
4

1 回答 1

1

这不是您设置权限的地方,这是针对应用中心的。该页面的顶部有一个注释。

使用这些设置输入您的应用在应用中心显示时所需的权限集

您需要在 Android 代码中添加权限范围

Android 登录使用 LoginButton 类上的 setReadPermissions 和 setPublishPermissions。

https://developers.facebook.com/docs/facebook-login/permissions/#adding

例如在 Android 登录教程中

LoginButton authButton = (LoginButton) view.findViewById(R.id.authButton);
authButton.setFragment(this);
authButton.setReadPermissions(Arrays.asList("user_events", "friends_events"));

https://developers.facebook.com/docs/howtos/androidsdk/3.0/login-with-facebook/#step3

于 2013-07-27T13:41:39.150 回答