我正在尝试获取用户的电子邮件和生日(使用我的请求)。我的应用程序具有电子邮件和 user_birthday 权限,并且我使用的 fb 帐户具有电子邮件和生日集。
当我尝试使用带有 'fields=id,email,birthday' 的用户 access_token 使用 'Graph API Explorer' ( https://developers.facebook.com/tools/explorer ) 时,我得到的只是 id。
任何人都可以在这方面给我建议。
这是我的代码:
Session.openActiveSession(this, true, new Session.StatusCallback() {
// callback when session changes state
@Override
public void call(Session session, SessionState state, Exception exception) {
if (session.isOpened()) {
// make request to the /me API
Request request = Request.newMeRequest(session, new Request.GraphUserCallback() {
// callback after Graph API response with user object
@Override
public void onCompleted(GraphUser user, Response response) {
if (user != null) {
// here I check the infos I got.
Log.d("some tag", user.getInnerJSONObject().toString()); // it shows only the id, no email or birthday.
if (Session.getActiveSession() != null) {
Log.i(TAG, "Log out from FB");
Session.getActiveSession().closeAndClearTokenInformation();
}
}
}
});
// set params.
request.getParameters().putString("fields", "id,email,birthday");
// execute request.
request.executeAsync();
Log.d(TAG, request.toString());
}
if (exception != null) {
exception.printStackTrace();
}
}
});
非常感谢。